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:59 +0100 |
| commit | b87bfedf65c289bf0ee5338c9e10492b70b1e8e0 (patch) | |
| tree | 906ba5d55d6993f59d7bb1def63d494bafd38728 /signal.c | |
| parent | 5556dde4d3ad4e34267320b1411fc090b18a24b0 (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 } |