NetBSD/bin/sh
kre e904ec4095 Better interactive SIGINT handling (when a trap is set), and other
cleanups to the trap code.   No longer silently ignore attempts to
do anything other than set SIGKILL or SIGSTOP to the default ('-")
state.   Don't include those in trap or trap -p output (the former
because they cannot be other than in default state, so simply aren't
included, the latter because it is pointless) but do list them
when requested with trap -p SIG.

Interactive mode SIGINT traps are now run ASAP, rather than after
a command has been entered (so the sequence ^C \n is no longer needed
to generate one).   Further, when trapped, in interactive mode,
while waiting for a user command, a SIGINT acts (aside from the
trap being run) just like when not trapped, aborts the command being
entered (rather than leaving it, which it did when libedit was in use)
prints a new prompt, and starts again (which is what should happen.)

Traps other than SIGINT (which has always been handled special in
interactive mode) are unaffected by this change, as are SIGINT traps
in non-interactive shells.    Or that is the intent anyway.

Fix an in_dotrap ref count bug (was never being decremented... that
was inserted in a place never executed) (relatively harmless) and
add/improve some trap/signal related DEBUG mode tracing.
2019-04-25 03:54:10 +00:00
..
bltin Remove workaround for ancient HTML generation code. 2017-07-03 21:28:48 +00:00
funcs
USD.doc Fix "every" typo in quote from The Mythical Man-Month 2018-09-14 05:59:10 +00:00
alias.c Allocate alias pointers for qsort() to use on the stack, rather than 2019-02-09 09:11:07 +00:00
alias.h Revamp aliases - as dumb an idea as they are, if we're going 2018-12-03 06:40:26 +00:00
arith_token.c Do a better job of reporting invalid numeric constants in arithmetic exprs. 2017-12-17 04:06:03 +00:00
arith_tokens.h Add support for ++ and -- (pre & post) and ',' to arithmetic. 2017-07-24 13:21:14 +00:00
arithmetic.c In uses like $(( var )) (un-dollared vars in arithmetic) we allow 2018-04-21 23:01:29 +00:00
arithmetic.h
builtins.def Add the "specialvar" built-in command. Discussed (well, mentioned 2019-02-14 11:15:24 +00:00
cd.c DEBUG only changes. Convert the TRACE() calls in the remaining files 2017-07-05 20:00:27 +00:00
cd.h
error.c PR bin/53919 2019-02-04 11:16:41 +00:00
error.h PR bin/53919 2019-02-04 11:16:41 +00:00
eval.c DEBUG mode build changes - add extra trace output. 2019-02-09 09:17:59 +00:00
eval.h PR bin/53919 2019-02-04 11:16:41 +00:00
exec.c Fix several bugs in the command / type builtin ( including PR bin/48499 ) 2018-07-25 14:42:50 +00:00
exec.h Deal with ref after free found by ASAN when a function redefines 2018-06-22 11:04:55 +00:00
expand.c PR bin/54112 2019-04-10 08:13:11 +00:00
expand.h Rationalise (slightly) the way that expansions are processed 2018-11-18 17:23:37 +00:00
histedit.c Remove a function prototype which was added to <histedit.h> in 2005. 2019-02-10 19:21:52 +00:00
init.h
input.c KNF - white space changes, indent using tabs not spaces. NFC. 2019-02-09 09:20:47 +00:00
input.h PR bin/48875 (is related, and ameliorated, but not exactly "fixed") 2018-08-19 23:50:27 +00:00
jobs.c Fix a logic botch that prevented "wait -n" (with no pid args) from 2019-03-26 13:32:26 +00:00
jobs.h Whitespace cleanup from last update. NFC. 2018-09-11 03:30:40 +00:00
machdep.h
mail.c
mail.h
main.c When an interactive shell exits due to an EOF on stdin, send a newline 2019-02-09 09:33:20 +00:00
main.h When forking a child shell, arrange for errors/exit to always unwind 2018-12-03 02:38:30 +00:00
Makefile Change the (commented out) setting of -DDEBUG to the form that 2018-10-28 18:13:47 +00:00
memalloc.c INTON / INTOFF audit and cleanup. 2019-02-09 03:35:55 +00:00
memalloc.h Fix (hopefully) the problem reported on current-users by Patrick Welche. 2018-08-22 20:08:54 +00:00
miscbltin.c
miscbltin.h
mkbuiltins
mkinit.sh Use printf, rather than echo (via echo redefined as a function that 2018-12-05 09:20:18 +00:00
mknodenames.sh In the older debug code (not using the new macros added in the 2018-08-18 03:09:37 +00:00
mknodes.sh Add some error checking, and stop assuming what the input 2019-01-19 13:08:50 +00:00
mkoptions.sh Sort options with long names that differ only by char case in 2017-11-15 09:21:19 +00:00
mktokens Add a comment explaining the ordering reltionship of the tokens 2017-07-26 03:46:54 +00:00
myhistedit.h Now libedit supports embedded mode switch sequence, improve sh 2017-06-28 13:46:06 +00:00
mystring.c Remove atoi() 2018-07-13 22:43:44 +00:00
mystring.h
nodes.c.pat Deal with ref after free found by ASAN when a function redefines 2018-06-22 11:04:55 +00:00
nodetypes
option.list Avoid long option names that differ only in character case. 2018-11-23 20:40:06 +00:00
options.c Remove atoi() 2018-07-13 22:43:44 +00:00
options.h
output.c Remove the -X option from SMALL shells (as used on boot floppies, 2017-11-21 03:42:39 +00:00
output.h Remove the -X option from SMALL shells (as used on boot floppies, 2017-11-21 03:42:39 +00:00
parser.c Finish the fixes from Feb 4 for handling of random data that 2019-02-27 04:10:56 +00:00
parser.h Delete a no-longer-used #define that referred to a struct field that 2019-02-13 21:40:50 +00:00
redir.c The previous commit was obviously made by a broken mindless automoton 2019-03-01 06:15:01 +00:00
redir.h Include redirections in trace output from "set -x" 2017-06-30 23:01:21 +00:00
sh.1 Bump date for previous. 2019-04-22 04:10:33 +00:00
shell.h NFCI - DEBUG mode only change. 2019-01-22 13:48:28 +00:00
show.c DEBUG mode only change. When pretty-printing a word from a parse 2019-02-14 13:27:59 +00:00
show.h NFC: DEBUG only change - provide an externally visible (to the DEBUG sh 2017-06-30 23:00:40 +00:00
syntax.c Add a couple of comments. NFC. 2019-02-04 09:56:48 +00:00
syntax.h Finish the fixes from Feb 4 for handling of random data that 2019-02-27 04:10:56 +00:00
TOUR
trap.c Better interactive SIGINT handling (when a trap is set), and other 2019-04-25 03:54:10 +00:00
trap.h Make pendingsigs forward declaration match the definition. 2018-12-03 10:53:29 +00:00
var.c Add the "specialvar" built-in command. Discussed (well, mentioned 2019-02-14 11:15:24 +00:00
var.h Alter a design botch when magic (self modifying) variables 2018-12-04 14:03:30 +00:00
version.h The time has come, the Walrus said... (but no shoes, 2018-12-12 12:16:42 +00:00