summaryrefslogtreecommitdiff
path: root/Src/signals.c
diff options
context:
space:
mode:
Diffstat (limited to 'Src/signals.c')
-rw-r--r--Src/signals.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/Src/signals.c b/Src/signals.c
index 8b1b9775c..86a5de748 100644
--- a/Src/signals.c
+++ b/Src/signals.c
@@ -487,9 +487,12 @@ zhandler(int sig)
}
/* Find the process and job containing this pid and update it. */
- if (findproc(pid, &jn, &pn)) {
+ if (findproc(pid, &jn, &pn, 0)) {
update_process(pn, status);
update_job(jn);
+ } else if (findproc(pid, &jn, &pn, 1)) {
+ pn->status = status;
+ update_job(jn);
} else {
/* If not found, update the shell record of time spent by
* children in sub processes anyway: otherwise, this