diff options
Diffstat (limited to 'lib/libpthread/thread/thr_sigpending.c')
-rw-r--r-- | lib/libpthread/thread/thr_sigpending.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/libpthread/thread/thr_sigpending.c b/lib/libpthread/thread/thr_sigpending.c index 1edf01f..ad5354b 100644 --- a/lib/libpthread/thread/thr_sigpending.c +++ b/lib/libpthread/thread/thr_sigpending.c @@ -55,8 +55,9 @@ _sigpending(sigset_t *set) ret = EINVAL; } else { - if (!_kse_isthreaded()) - return __sys_sigpending(set); + if (!_kse_isthreaded() || + (curthread->attr.flags & PTHREAD_SCOPE_SYSTEM)) + return (__sys_sigpending(set)); crit = _kse_critical_enter(); KSE_SCHED_LOCK(curthread->kse, curthread->kseg); |