diff options
author | Qijiang Fan <fqj@google.com> | 2020-07-24 15:20:43 +0900 |
---|---|---|
committer | Qijiang Fan <fqj@google.com> | 2020-07-31 01:21:09 +0900 |
commit | a4cec6c21e18b9c18540808d983064d81df00533 (patch) | |
tree | 4cf42caf1c41c75a1e31408870cb7bb9bb58f0ca | |
parent | 830b8b038f60039b54eb661c52a22fe35460ff8c (diff) | |
download | libbrillo-a4cec6c21e18b9c18540808d983064d81df00533.tar.gz |
libbrillo: replace sigorset with sigismember and sigaddset
Bug: None
Test: mma
Change-Id: Ibe5d3c0a040b21a8aa13ad258b9003d06b929b44
-rw-r--r-- | brillo/asynchronous_signal_handler.cc | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/brillo/asynchronous_signal_handler.cc b/brillo/asynchronous_signal_handler.cc index 30ac2a5..38b1787 100644 --- a/brillo/asynchronous_signal_handler.cc +++ b/brillo/asynchronous_signal_handler.cc @@ -87,7 +87,16 @@ void AsynchronousSignalHandler::UpdateSignals() { if (!descriptor_.is_valid()) return; sigset_t mask; +#ifdef __ANDROID__ + CHECK_EQ(0, sigemptyset(&mask)); + for (size_t i = 0; i < NSIG; ++i) { + if (sigismember(&signal_mask_, i) == 1 || sigismember(&saved_signal_mask_, i) == 1) { + CHECK_EQ(0, sigaddset(&mask, i)); + } + } +#else CHECK_EQ(0, sigorset(&mask, &signal_mask_, &saved_signal_mask_)); +#endif CHECK_EQ(0, sigprocmask(SIG_SETMASK, &mask, nullptr)); CHECK_EQ( descriptor_.get(), |