about summary refs log tree commit diff
path: root/Src/exec.c
diff options
context:
space:
mode:
authorTanaka Akira <akr@users.sourceforge.net>2000-03-13 09:57:05 +0000
committerTanaka Akira <akr@users.sourceforge.net>2000-03-13 09:57:05 +0000
commit16ea1f357d02481efa55d5304ab8f452e37ca6b4 (patch)
tree13fde2aa20a8aee6fc85804d7c9764fd2e9b9658 /Src/exec.c
parentb1fcad6a63555840fd50a1678a7755443f892665 (diff)
downloadzsh-16ea1f357d02481efa55d5304ab8f452e37ca6b4.tar.gz
zsh-16ea1f357d02481efa55d5304ab8f452e37ca6b4.tar.xz
zsh-16ea1f357d02481efa55d5304ab8f452e37ca6b4.zip
zsh-workers/10106
Diffstat (limited to 'Src/exec.c')
-rw-r--r--Src/exec.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/Src/exec.c b/Src/exec.c
index 4765e41b2..d6715a328 100644
--- a/Src/exec.c
+++ b/Src/exec.c
@@ -315,12 +315,16 @@ static char list_pipe_text[JOBTEXTSIZE];
 static int
 execcursh(Estate state, int do_exec)
 {
+    Wordcode end = state->pc + WC_CURSH_SKIP(state->pc[-1]);
+
     if (!list_pipe && thisjob != list_pipe_job)
 	deletejob(jobtab + thisjob);
     cmdpush(CS_CURSH);
     execlist(state, 1, do_exec);
     cmdpop();
 
+    state->pc = end;
+
     return lastval;
 }