diff options
| author | David Xu <davidxu@FreeBSD.org> | 2003-11-09 00:37:14 +0000 |
|---|---|---|
| committer | David Xu <davidxu@FreeBSD.org> | 2003-11-09 00:37:14 +0000 |
| commit | 0e17930dd7bfaf070b3d047c80c4f57e8de86404 (patch) | |
| tree | 5fa3a90a89eabef794b2689910cc9b0a43f8d3c1 /lib/libpthread/thread | |
| parent | f8206c33ec4093dad9dbc5c3b62e062136de07c4 (diff) | |
Notes
Diffstat (limited to 'lib/libpthread/thread')
| -rw-r--r-- | lib/libpthread/thread/thr_kern.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/libpthread/thread/thr_kern.c b/lib/libpthread/thread/thr_kern.c index 79098387b55d..5186c524948c 100644 --- a/lib/libpthread/thread/thr_kern.c +++ b/lib/libpthread/thread/thr_kern.c @@ -1568,6 +1568,8 @@ kse_check_completed(struct kse *kse) != 0) { if (SIGISMEMBER(thread->sigmask, sig)) SIGADDSET(thread->sigpend, sig); + else if (THR_IN_CRITICAL(thread)) + kse_thr_interrupt(NULL, KSE_INTR_SIGEXIT, sig); else (void)_thr_sig_add(thread, sig, &thread->tcb->tcb_tmbx.tm_syncsig); |
