diff options
| author | Toby Goodwin <tgoodwin@cygnus.co.uk> | 1997-07-07 00:00:01 +0100 |
|---|---|---|
| committer | Toby Goodwin <toby@paccrat.org> | 2015-05-16 21:22:09 +0100 |
| commit | 671e1e2d1599aa8c5f1010b3fe75c151c56a7403 (patch) | |
| tree | 906ba5d55d6993f59d7bb1def63d494bafd38728 /signal.c | |
| parent | a076248389c82276e079756bee26c011b03f70f2 (diff) | |
beta: rc-1.5b2
Diffstat (limited to 'signal.c')
| -rw-r--r-- | signal.c | 9 |
1 files changed, 8 insertions, 1 deletions
@@ -19,7 +19,7 @@ extern void catcher(int s) { } signal(s, catcher); interrupt_happened = TRUE; -#ifndef SVSIGS +#ifndef HAVE_RESTARTABLE_SYSCALLS if (slow) longjmp(slowbuf.j, 1); #endif @@ -70,4 +70,11 @@ extern void initsignal() { signal(i, h); sighandlers[i] = h; } + +#ifdef SIGCLD + /* Ensure that SIGCLD is not SIG_IGN. Solaris's rshd does this. :-( */ + h = signal(SIGCLD, SIG_DFL); + if (h != SIG_IGN) + signal(SIGCLD, h); +#endif } |