diff options
Diffstat (limited to 'Src/exec.c')
-rw-r--r-- | Src/exec.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/Src/exec.c b/Src/exec.c index 83f397335..ee0752035 100644 --- a/Src/exec.c +++ b/Src/exec.c @@ -3495,7 +3495,8 @@ doshfunc(char *name, Eprog prog, LinkList doshargs, int flags, int noreturnval) memcpy(oldpipestats, pipestats, bytes); } - starttrapscope(); + if (!intrap) + starttrapscope(); tab = pparams; if (!(flags & PM_UNDEFINED)) @@ -3595,7 +3596,8 @@ doshfunc(char *name, Eprog prog, LinkList doshargs, int flags, int noreturnval) opts[LOCALOPTIONS] = saveopts[LOCALOPTIONS]; } - endtrapscope(); + if (!intrap) + endtrapscope(); if (trapreturn < -1) trapreturn++; |