(_hurd_internal_post_signal): In check-for-pending signals code,
authormib <mib>
Fri, 28 Jun 1996 20:29:45 +0000 (20:29 +0000)
committermib <mib>
Fri, 28 Jun 1996 20:29:45 +0000 (20:29 +0000)
release _hurd_siglock before jumping to deliver_pending.

hurd/hurdsig.c

index 595cab6..5041ea0 100644 (file)
@@ -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);