about summary refs log tree commit diff
path: root/Src/signals.c
diff options
context:
space:
mode:
authorPeter Stephenson <pws@users.sourceforge.net>2003-05-02 10:25:27 +0000
committerPeter Stephenson <pws@users.sourceforge.net>2003-05-02 10:25:27 +0000
commit94da86f7956af9d6855c12d79d757b961bf0c2a4 (patch)
treeb1f29cf6076db0a33f9e923101816756d9be8508 /Src/signals.c
parentd9274f5126ebd0ddb2902c0788d51ef57836b02b (diff)
downloadzsh-94da86f7956af9d6855c12d79d757b961bf0c2a4.tar.gz
zsh-94da86f7956af9d6855c12d79d757b961bf0c2a4.tar.xz
zsh-94da86f7956af9d6855c12d79d757b961bf0c2a4.zip
18492: Provide partial fix for multios and output process substitution
asynchronicity problem.  Document workarounds for remaining problems.
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