diff options
author | cracauer <cracauer@FreeBSD.org> | 1999-04-01 13:27:36 +0000 |
---|---|---|
committer | cracauer <cracauer@FreeBSD.org> | 1999-04-01 13:27:36 +0000 |
commit | 5610584759a8f26e412dab049cd02e3a33a2d256 (patch) | |
tree | 8e1d1ff2895d740ebfae1a16cedd73afd5ed5078 /bin/sh/eval.c | |
parent | fa9cc0ebfb3821fac3240755fae227fa654a37f7 (diff) | |
download | FreeBSD-src-5610584759a8f26e412dab049cd02e3a33a2d256.zip FreeBSD-src-5610584759a8f26e412dab049cd02e3a33a2d256.tar.gz |
The immediate execution of traps I introduced in September 1998 (to
make /etc/rc interruptible in cases when programs hang with blocked
signals) isn't standard enough.
It is now switched off by default and a new switch -T enables it.
You should update /etc/rc to the version I'm about to commit in a few
minutes to keep it interruptible.
Diffstat (limited to 'bin/sh/eval.c')
-rw-r--r-- | bin/sh/eval.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/bin/sh/eval.c b/bin/sh/eval.c index 427b2bc..8b4fb62f 100644 --- a/bin/sh/eval.c +++ b/bin/sh/eval.c @@ -39,7 +39,7 @@ static char sccsid[] = "@(#)eval.c 8.9 (Berkeley) 6/8/95"; #endif static const char rcsid[] = - "$Id$"; + "$Id: eval.c,v 1.15 1998/05/18 06:43:34 charnier Exp $"; #endif /* not lint */ #include <signal.h> @@ -706,7 +706,8 @@ evalcommand(cmd, flags, backcmd) /* Fork off a child process if necessary. */ if (cmd->ncmd.backgnd - || (cmdentry.cmdtype == CMDNORMAL && (flags & EV_EXIT) == 0) + || (cmdentry.cmdtype == CMDNORMAL + && ((flags & EV_EXIT) == 0 || Tflag)) || ((flags & EV_BACKCMD) != 0 && (cmdentry.cmdtype != CMDBUILTIN || cmdentry.u.index == DOTCMD |