summaryrefslogtreecommitdiffstats
path: root/lib/libc_r/uthread/uthread_sigwait.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libc_r/uthread/uthread_sigwait.c')
-rw-r--r--lib/libc_r/uthread/uthread_sigwait.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/libc_r/uthread/uthread_sigwait.c b/lib/libc_r/uthread/uthread_sigwait.c
index 7257b7e..96a1e15 100644
--- a/lib/libc_r/uthread/uthread_sigwait.c
+++ b/lib/libc_r/uthread/uthread_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))
OpenPOWER on IntegriCloud