summaryrefslogtreecommitdiff
path: root/Src/exec.c
diff options
context:
space:
mode:
Diffstat (limited to 'Src/exec.c')
-rw-r--r--Src/exec.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/Src/exec.c b/Src/exec.c
index a398211d3..5aec655a2 100644
--- a/Src/exec.c
+++ b/Src/exec.c
@@ -3773,9 +3773,14 @@ getpipe(char *cmd, int nullexec)
int pipes[2], out = *cmd == Inang;
pid_t pid;
struct timeval bgtime;
+ char *ends;
- if (!(prog = parsecmd(cmd, NULL)))
+ if (!(prog = parsecmd(cmd, &ends)))
return -1;
+ if (*ends) {
+ zerr("invalid syntax for process substitution in redirection");
+ return -1;
+ }
mpipe(pipes);
if ((pid = zfork(&bgtime))) {
zclose(pipes[out]);