summaryrefslogtreecommitdiffstats
path: root/sigchainlib
diff options
context:
space:
mode:
authorDave Allison <dallison@google.com>2014-07-08 18:07:18 -0700
committerDave Allison <dallison@google.com>2014-07-09 21:43:27 +0000
commit213bc5bf02c6521170c6a948858190e7b5dbe659 (patch)
treea5d5597a06a3c8a829ce66e5982206218e8d85ce /sigchainlib
parentc21dc06adc8c8447561208a3fb72ccf6d0443613 (diff)
downloadart-213bc5bf02c6521170c6a948858190e7b5dbe659.zip
art-213bc5bf02c6521170c6a948858190e7b5dbe659.tar.gz
art-213bc5bf02c6521170c6a948858190e7b5dbe659.tar.bz2
Remove incorrect check for sa_mask in signal chaining
This removes an incorrect check using the sa_mask field of the sigaction structure when chaining to a user's signal handler. The check prevented a user's handler being called when sa_mask was set. Thanks to primiano@ for the excellent bug report. Bug: 16005022 Change-Id: I0548003f4fc3b1889a6859091e603ead4a9b0607
Diffstat (limited to 'sigchainlib')
-rw-r--r--sigchainlib/sigchain.cc5
1 files changed, 0 insertions, 5 deletions
diff --git a/sigchainlib/sigchain.cc b/sigchainlib/sigchain.cc
index 26e7d31..5a5805f 100644
--- a/sigchainlib/sigchain.cc
+++ b/sigchainlib/sigchain.cc
@@ -101,11 +101,6 @@ void InvokeUserSignalHandler(int sig, siginfo_t* info, void* context) {
}
const struct sigaction& action = user_sigactions[sig].GetAction();
-
- // Only deliver the signal if the signal was not masked out.
- if (sigismember(&action.sa_mask, sig)) {
- return;
- }
if ((action.sa_flags & SA_SIGINFO) == 0) {
if (action.sa_handler != NULL) {
action.sa_handler(sig);