diff options
author | Todd C. Miller <millert@cvs.openbsd.org> | 2002-01-19 19:00:15 +0000 |
---|---|---|
committer | Todd C. Miller <millert@cvs.openbsd.org> | 2002-01-19 19:00:15 +0000 |
commit | 1018dd408c2ba228507a7d0753664d7569554076 (patch) | |
tree | f920ba4cefb92b95bd81b6e2b3c9922bfeeffe32 /sys | |
parent | d7f6de817f861fdd46c566618b1e191cf637d3ae (diff) |
If handler for SIGCHLD is SIG_IGN, reset to SIG_DLF. This is consistent
with our handling of SA_NOCLDWAIT as well as other operating systems.
From FreeBSD.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/kern/kern_sig.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c index 780b1d7bc6e..c0fd97f1021 100644 --- a/sys/kern/kern_sig.c +++ b/sys/kern/kern_sig.c @@ -1,4 +1,4 @@ -/* $OpenBSD: kern_sig.c,v 1.51 2002/01/07 16:16:32 millert Exp $ */ +/* $OpenBSD: kern_sig.c,v 1.52 2002/01/19 19:00:14 millert Exp $ */ /* $NetBSD: kern_sig.c,v 1.54 1996/04/22 01:38:32 christos Exp $ */ /* @@ -415,6 +415,8 @@ execsigs(p) ps->ps_sigstk.ss_sp = 0; ps->ps_flags = 0; p->p_flag &= ~P_NOCLDWAIT; + if (ps->ps_sigact[SIGCHLD] == SIG_IGN) + ps->ps_sigact[SIGCHLD] = SIG_DFL; } /* |