about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPeter Stephenson <p.stephenson@samsung.com>2018-04-19 13:58:10 +0100
committerPeter Stephenson <p.stephenson@samsung.com>2018-04-19 13:58:10 +0100
commit0f29b5148e6157d9bfc1ead9fdae67137358e541 (patch)
tree1eea5b4d51404e3d24af789da5be4b5b18a4ced0
parent3c74891fcd68d37c1629943f703ac70428e3ce9f (diff)
downloadzsh-0f29b5148e6157d9bfc1ead9fdae67137358e541.tar.gz
zsh-0f29b5148e6157d9bfc1ead9fdae67137358e541.tar.xz
zsh-0f29b5148e6157d9bfc1ead9fdae67137358e541.zip
42686: Fix previous pgrp patch.
We shouldn't do any fix ups unless the process has actually
exited.
-rw-r--r--ChangeLog5
-rw-r--r--Src/signals.c3
2 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index c5fe925dd..41b993bfe 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2018-04-19  Peter Stephenson  <p.stephenson@samsung.com>
+
+	* 42686: Src/signals.c: Fix 42630 only to change process groups
+	on exited process.
+
 2018-04-17  Peter Stephenson  <p.stephenson@samsung.com>
 
 	* 42630: Src/exec.c, Src/signals.c: Improve process group
diff --git a/Src/signals.c b/Src/signals.c
index 2a6aa3f24..6e1215875 100644
--- a/Src/signals.c
+++ b/Src/signals.c
@@ -537,7 +537,8 @@ wait_for_processes(void)
 #else
 		update_process(pn, status);
 #endif
-		if (pn->pid == jn->gleader) {
+		if (WIFEXITED(status) &&
+		    pn->pid == jn->gleader) {
 		    jn->gleader = 0;
 		    if (!(jn->stat & STAT_NOSTTY)) {
 			/*