about summary refs log tree commit diff
path: root/Src/exec.c
diff options
context:
space:
mode:
authorPeter Stephenson <pws@users.sourceforge.net>2009-09-21 20:49:21 +0000
committerPeter Stephenson <pws@users.sourceforge.net>2009-09-21 20:49:21 +0000
commit997eafdcad85e9a2c59db1141b404dd4c4bcb22d (patch)
tree81c176a54511da8009c70900063e4ba228fe0988 /Src/exec.c
parente85349fbf793f18211d9280ca80ec8911e05c708 (diff)
downloadzsh-997eafdcad85e9a2c59db1141b404dd4c4bcb22d.tar.gz
zsh-997eafdcad85e9a2c59db1141b404dd4c4bcb22d.tar.xz
zsh-997eafdcad85e9a2c59db1141b404dd4c4bcb22d.zip
27283: failure to dup fd caused mayhem
Diffstat (limited to 'Src/exec.c')
-rw-r--r--Src/exec.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/Src/exec.c b/Src/exec.c
index e68237948..ca9cf0f4d 100644
--- a/Src/exec.c
+++ b/Src/exec.c
@@ -1980,6 +1980,7 @@ addfd(int forked, int *save, struct multio **mfds, int fd1, int fd2, int rflag,
 		     */
 		    if (fdN < 0 && errno != EBADF) {
 			zerr("cannot duplicate fd %d: %e", fd1, errno);
+			mfds[fd1] = NULL;
 			closemnodes(mfds);
 			return;
 		    }