diff options
Diffstat (limited to 'sys')
-rw-r--r-- | sys/kern/kern_exit.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/kern/kern_exit.c b/sys/kern/kern_exit.c index 419c4b2..84c0680 100644 --- a/sys/kern/kern_exit.c +++ b/sys/kern/kern_exit.c @@ -470,10 +470,10 @@ exit1(struct thread *td, int rv) } else mtx_unlock(&p->p_pptr->p_sigacts->ps_mtx); - if (p->p_sigparent && p->p_pptr != initproc) - psignal(p->p_pptr, p->p_sigparent); - else + if (p->p_pptr == initproc) psignal(p->p_pptr, SIGCHLD); + else if (p->p_sigparent != 0) + psignal(p->p_pptr, p->p_sigparent); PROC_UNLOCK(p->p_pptr); /* |