aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Bushnell, BSG <thomas@gnu.org>1996-06-28 19:44:50 +0000
committerThomas Bushnell, BSG <thomas@gnu.org>1996-06-28 19:44:50 +0000
commit1a6a8198a63389cdb0ff4797d1054a7452ea23d3 (patch)
treecf00e62f17721a5d826c5f2806774c050ab634a0
parent60326989911757399124d76968b802c6d623f3f2 (diff)
downloadglibc-1a6a8198a63389cdb0ff4797d1054a7452ea23d3.tar
glibc-1a6a8198a63389cdb0ff4797d1054a7452ea23d3.tar.gz
glibc-1a6a8198a63389cdb0ff4797d1054a7452ea23d3.tar.bz2
glibc-1a6a8198a63389cdb0ff4797d1054a7452ea23d3.zip
(_hurd_internal_post_signal): In pending signal check for signal zero, repair logical sense of test by parethisizing correctly.
-rw-r--r--hurd/hurdsig.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/hurd/hurdsig.c b/hurd/hurdsig.c
index 1ff6535c69..595cab624a 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);
}