From a6de812f00c4ddb785ff178e51fab01d81012f22 Mon Sep 17 00:00:00 2001 From: Tormod Volden Date: Sat, 23 May 2015 12:58:42 +0200 Subject: [PATCH] Don't signal dead processes in doexit() ssig() checks for this later but better check it here before doing anything else. Signed-off-by: Tormod Volden --- Kernel/process.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Kernel/process.c b/Kernel/process.c index caf94fd9..f0726f39 100644 --- a/Kernel/process.c +++ b/Kernel/process.c @@ -589,10 +589,10 @@ void doexit(int16_t val, int16_t val2) 2 * sizeof(clock_t)); for (p = ptab; p < ptab_end; ++p) { - if (p == udata.u_ptab) + if (p->p_status == P_EMPTY || p == udata.u_ptab) continue; /* Set any child's parents to our parent */ - if (p->p_status && p->p_pptr == udata.u_ptab) + if (p->p_pptr == udata.u_ptab) p->p_pptr = udata.u_ptab->p_pptr; /* Send SIGHUP to any pgrp members and remove them from our pgrp */ -- 2.34.1