summaryrefslogtreecommitdiff
path: root/Src/exec.c
diff options
context:
space:
mode:
Diffstat (limited to 'Src/exec.c')
-rw-r--r--Src/exec.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/Src/exec.c b/Src/exec.c
index a4294288b..9890286b2 100644
--- a/Src/exec.c
+++ b/Src/exec.c
@@ -1795,6 +1795,8 @@ execpline(Estate state, wordcode slcode, int how, int last1)
deletejob(jn, 0);
thisjob = pj;
}
+ else
+ unqueue_signals();
if ((slflags & WC_SUBLIST_NOT) && !errflag)
lastval = !lastval;
}
@@ -5556,6 +5558,7 @@ runshfunc(Eprog prog, FuncWrap wrap, char *name)
if (!cont) {
if (ou)
zfree(ou, ouu);
+ unqueue_signals();
return;
}
wrap = wrap->next;