diff options
author | Thomas Bushnell, BSG <thomas@gnu.org> | 1996-06-28 20:29:45 +0000 |
---|---|---|
committer | Thomas Bushnell, BSG <thomas@gnu.org> | 1996-06-28 20:29:45 +0000 |
commit | 6a60a937573f8c77251e60850344c5cd53a439b4 (patch) | |
tree | 096e92778a3e685fd87bee98981dc3aff2964ce6 /hurd | |
parent | 1a6a8198a63389cdb0ff4797d1054a7452ea23d3 (diff) | |
download | glibc-6a60a937573f8c77251e60850344c5cd53a439b4.tar.gz |
(_hurd_internal_post_signal): In check-for-pending signals code, release _hurd_siglock before jumping to deliver_pending.
Diffstat (limited to 'hurd')
-rw-r--r-- | hurd/hurdsig.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/hurd/hurdsig.c b/hurd/hurdsig.c index 595cab624a..5041ea079e 100644 --- a/hurd/hurdsig.c +++ b/hurd/hurdsig.c @@ -934,7 +934,10 @@ _hurd_internal_post_signal (struct hurd_sigstate *ss, dropped right away. */ || ss->actions[signo].sa_handler == SIG_IGN || ss->actions[signo].sa_handler == SIG_DFL)) - goto deliver_pending; + { + mutex_unlock (&_hurd_siglock); + goto deliver_pending; + } __spin_unlock (&ss->lock); } __mutex_unlock (&_hurd_siglock); |