summaryrefslogtreecommitdiff
path: root/lib/libpthread/thread/thr_sigwait.c
diff options
context:
space:
mode:
authorMarcel Moolenaar <marcel@FreeBSD.org>1999-09-29 15:18:46 +0000
committerMarcel Moolenaar <marcel@FreeBSD.org>1999-09-29 15:18:46 +0000
commit3cf3c5d9ddb2edd1033c0b8e612096b8b35b3bb4 (patch)
treef20b5cb25cf94c494095050b1f52676e7efd71f7 /lib/libpthread/thread/thr_sigwait.c
parent956d3333cadea27513348a7718e9cfd5c26e9ba0 (diff)
Notes
Diffstat (limited to 'lib/libpthread/thread/thr_sigwait.c')
-rw-r--r--lib/libpthread/thread/thr_sigwait.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/libpthread/thread/thr_sigwait.c b/lib/libpthread/thread/thr_sigwait.c
index 7257b7e794cc..96a1e159570b 100644
--- a/lib/libpthread/thread/thr_sigwait.c
+++ b/lib/libpthread/thread/thr_sigwait.c
@@ -68,7 +68,9 @@ sigwait(const sigset_t * set, int *sig)
sigdelset(&waitset, SIGINFO);
/* Check to see if a pending signal is in the wait mask. */
- if (tempset = (_thread_run->sigpend & waitset)) {
+ tempset = _thread_run->sigpend;
+ SIGSETAND(tempset, waitset);
+ if (SIGNOTEMPTY(tempset)) {
/* Enter a loop to find a pending signal: */
for (i = 1; i < NSIG; i++) {
if (sigismember (&tempset, i))