about summary refs log tree commit diff
diff options
context:
space:
mode:
authorBart Schaefer <barts@users.sourceforge.net>2008-10-10 09:55:34 +0000
committerBart Schaefer <barts@users.sourceforge.net>2008-10-10 09:55:34 +0000
commitf1628c32788039657e190b17a2ce0013c0a7892e (patch)
tree6ea4a19230d9788caf5b908999f9124adcefe7df
parent27d940901f1d6ba2986c3d94297c7b72507fdc72 (diff)
downloadzsh-f1628c32788039657e190b17a2ce0013c0a7892e.tar.gz
zsh-f1628c32788039657e190b17a2ce0013c0a7892e.tar.xz
zsh-f1628c32788039657e190b17a2ce0013c0a7892e.zip
25140: improve error handling/reporting for here-document temp files.
-rw-r--r--Src/exec.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/Src/exec.c b/Src/exec.c
index 5cc92b548..47c0184aa 100644
--- a/Src/exec.c
+++ b/Src/exec.c
@@ -2812,10 +2812,11 @@ execcmd(Estate state, int input, int output, int how, int last1)
 		else
 		    fil = getherestr(fn);
 		if (fil == -1) {
+		    if (errno && errno != EINTR)
+			zwarn("can't create temp file for here document: %e",
+			      errno);
 		    closemnodes(mfds);
 		    fixfds(save);
-		    if (errno && errno != EINTR)
-			zwarn("%e", errno);
 		    execerr();
 		}
 		addfd(forked, save, mfds, fn->fd1, fil, 0, fn->varid);