From 88ba2a7fa4a4e9ece2211b64fa3b51b55672dc6d Mon Sep 17 00:00:00 2001 From: mtm Date: Thu, 19 Feb 2004 13:47:12 +0000 Subject: Don't wake up the thread after the signal handler has been executed. On return from the signal handler the call will either be restarted or EINTR will be returned, but it will not go back to its previous state. So, it is sufficient to simply change the state to 'running' without actually trying to wake up the thread. --- lib/libthr/thread/thr_sig.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lib/libthr/thread') diff --git a/lib/libthr/thread/thr_sig.c b/lib/libthr/thread/thr_sig.c index 48b3388..0b8ba2b 100644 --- a/lib/libthr/thread/thr_sig.c +++ b/lib/libthr/thread/thr_sig.c @@ -177,6 +177,6 @@ _thread_sig_wrapper(int sig, siginfo_t *info, void *context) /* Restore the thread's flags, and make it runnable */ _thread_critical_enter(curthread); curthread->flags = psd.psd_flags; - PTHREAD_NEW_STATE(curthread, PS_RUNNING); + PTHREAD_SET_STATE(curthread, PS_RUNNING); _thread_critical_exit(curthread); } -- cgit v1.1