diff options
author | Roland McGrath <roland@redhat.com> | 1994-04-06 01:17:43 +0000 |
---|---|---|
committer | Roland McGrath <roland@redhat.com> | 1994-04-06 01:17:43 +0000 |
commit | fd025b90899a09cb861c67d3aee8a981d8b7af04 (patch) | |
tree | eb1fdafdeae38db24355fa697afdf15cda8f5a1f | |
parent | 6dc8e442f2636dedc1808a69c838638186050e64 (diff) | |
download | gunmake-fd025b90899a09cb861c67d3aee8a981d8b7af04.tar.gz |
(fatal_error_signal): Don't unblock signals.
-rw-r--r-- | commands.c | 17 |
1 files changed, 4 insertions, 13 deletions
@@ -331,18 +331,9 @@ fatal_error_signal (sig) { handling_fatal_signal = 1; + /* Set the handling for this signal to the default. + It is blocked now while we run this handler. */ signal (sig, SIG_DFL); -#ifdef POSIX - { - sigset_t set; - sigemptyset (&set); - (void) sigprocmask (SIG_SETMASK, &set, (sigset_t *) 0); - } -#else -#ifdef HAVE_SIGSETMASK - (void) sigsetmask (0); -#endif -#endif /* A termination signal won't be sent to the entire process group, but it means we want to kill the children. */ @@ -390,9 +381,9 @@ fatal_error_signal (sig) cause a core dump. Just exit instead. */ exit (1); - /* Signal the same code; this time it will really be fatal. */ + /* Signal the same code; this time it will really be fatal. The signal + will be unblocked when we return and arrive then to kill us. */ if (kill (getpid (), sig) < 0) - /* It shouldn't return, but if it does, die anyway. */ pfatal_with_name ("kill"); } |