From 35d309a6175dee4a2a165b1b51a8666704ed438c Mon Sep 17 00:00:00 2001 From: davidxu Date: Wed, 4 Jun 2003 12:38:21 +0000 Subject: Despite whether threaded mode is turned on, always save thread's signal mask. --- lib/libpthread/thread/thr_sigprocmask.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'lib/libpthread/thread') diff --git a/lib/libpthread/thread/thr_sigprocmask.c b/lib/libpthread/thread/thr_sigprocmask.c index ec39da0..9cb493a 100644 --- a/lib/libpthread/thread/thr_sigprocmask.c +++ b/lib/libpthread/thread/thr_sigprocmask.c @@ -44,8 +44,10 @@ __weak_reference(_sigprocmask, sigprocmask); int _sigprocmask(int how, const sigset_t *set, sigset_t *oset) { - if (_kse_isthreaded() != 0) - return (pthread_sigmask(how, set, oset)); - else - return (__sys_sigprocmask(how, set, oset)); + int ret; + + ret = pthread_sigmask(how, set, oset); + if ((ret == 0) && (_kse_isthreaded() == 0)) + ret = __sys_sigprocmask(how, set, oset); + return (ret); } -- cgit v1.1