diff options
-rw-r--r-- | hurd/hurdsig.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/hurd/hurdsig.c b/hurd/hurdsig.c index 1ff6535..595cab6 100644 --- a/hurd/hurdsig.c +++ b/hurd/hurdsig.c @@ -927,13 +927,13 @@ _hurd_internal_post_signal (struct hurd_sigstate *ss, { __spin_lock (&ss->lock); for (signo = 1; signo < NSIG; ++signo) - if (__sigismember (&ss->pending, signo) && - !__sigismember (&ss->blocked, signo) || + if (__sigismember (&ss->pending, signo) + && (!__sigismember (&ss->blocked, signo) /* We "deliver" immediately pending blocked signals whose action might be to ignore, so that if ignored they are dropped right away. */ - ss->actions[signo].sa_handler == SIG_IGN || - ss->actions[signo].sa_handler == SIG_DFL) + || ss->actions[signo].sa_handler == SIG_IGN + || ss->actions[signo].sa_handler == SIG_DFL)) goto deliver_pending; __spin_unlock (&ss->lock); } |