diff options
Diffstat (limited to '')
-rw-r--r-- | src/eval.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/eval.c b/src/eval.c index d5c1e6c..439f881 100644 --- a/src/eval.c +++ b/src/eval.c @@ -449,7 +449,7 @@ evalsubshell(union node *n, int flags) int status; expredir(n->nredir.redirect); - if (!backgnd && flags & EV_EXIT && !trap[0]) + if (!backgnd && flags & EV_EXIT && !have_traps()) goto nofork; INTOFF; jp = makejob(n, 1); @@ -836,7 +836,7 @@ bail: switch (cmdentry.cmdtype) { default: /* Fork off a child process if necessary. */ - if (!(flags & EV_EXIT) || trap[0]) { + if (!(flags & EV_EXIT) || have_traps()) { INTOFF; jp = makejob(cmd, 1); if (forkshell(jp, cmd, FORK_FG) != 0) { |