freebsd-skq/bin/sh
Jilles Tjoelker e16947f83d sh: Fix crash with empty functions (f() { }) introduced in r196483
Empty pairs of braces are represented by a NULL node pointer, just like
empty lines at the top level.

Support for empty pairs of braces may be removed later. They make the code
more complex, have inconsistent behaviour (may or may not change $?), are
not specified by POSIX and are not allowed by some other shells like bash,
dash and ksh93.

Reported by:	kan
2009-08-28 22:41:25 +00:00
..
bltin Declare echocmd() and testcmd(). 2005-08-13 15:04:30 +00:00
funcs /*- or .\"- or #- to begin license clauses. 2005-01-10 08:39:26 +00:00
alias.c be more type correct and align local ckmalloc() with its underlying malloc(3) by using a "size_t" instead of an "int" argument 2009-06-01 10:50:17 +00:00
alias.h Remove clause 3 from the UCB licenses. 2004-04-06 20:06:54 +00:00
arith_lex.l cvs -d stefanf@ncvs.FreeBSD.org:/home/ncvs 2005-08-13 07:54:23 +00:00
arith.h - Fix bugs where the value of arithmetic expansion$((...)) was trucated 2008-04-27 20:46:45 +00:00
arith.y - Fix bugs where the value of arithmetic expansion$((...)) was trucated 2008-04-27 20:46:45 +00:00
builtins.def Use -s to flag POSIX's "special built-in" utilities in builtins.def. Add a 2006-04-02 18:43:33 +00:00
cd.c Split updatepwd() into two smaller functions. The first one, findpwd(), 2008-02-24 16:50:55 +00:00
cd.h Remove clause 3 from the UCB licenses. 2004-04-06 20:06:54 +00:00
error.c Remove some white space at EOL. 2006-02-04 14:37:50 +00:00
error.h Remove clause 3 from the UCB licenses. 2004-04-06 20:06:54 +00:00
eval.c sh: Fix crash with empty functions (f() { }) introduced in r196483 2009-08-28 22:41:25 +00:00
eval.h Avoid leaving unnecessary waiting shells in many forms of sh -c COMMAND. 2009-06-13 21:17:45 +00:00
exec.c sh: Fix crash with empty functions (f() { }) introduced in r196483 2009-08-28 22:41:25 +00:00
exec.h sh: Fix crash when undefining or redefining a currently executing function. 2009-08-23 21:09:46 +00:00
expand.c Fix some weirdnesses in the NetBSD IFS code, 2009-06-25 17:14:06 +00:00
expand.h Remove clause 3 from the UCB licenses. 2004-04-06 20:06:54 +00:00
histedit.c sh: Improve handling of setjmp/longjmp volatile: 2009-06-23 20:45:12 +00:00
init.h Remove clause 3 from the UCB licenses. 2004-04-06 20:06:54 +00:00
input.c Properly flush input after an error in backquotes in interactive mode. 2009-06-17 21:58:32 +00:00
input.h Avoid leaving unnecessary waiting shells in many forms of sh -c COMMAND. 2009-06-13 21:17:45 +00:00
jobs.c Add the POSIX option -p to the jobs builtin command. It prints the PID of the 2006-10-07 16:51:16 +00:00
jobs.h Add the POSIX option -p to the jobs builtin command. It prints the PID of the 2006-10-07 16:51:16 +00:00
mail.c Include missing headers. 2005-08-13 08:26:58 +00:00
mail.h Remove clause 3 from the UCB licenses. 2004-04-06 20:06:54 +00:00
main.c Avoid leaving unnecessary waiting shells in many forms of sh -c COMMAND. 2009-06-13 21:17:45 +00:00
main.h Remove clause 3 from the UCB licenses. 2004-04-06 20:06:54 +00:00
Makefile Reduce the WARNS level to avoid a compiler warning about a variable 2007-11-18 01:53:07 +00:00
memalloc.c be more type correct and align local ckmalloc() with its underlying malloc(3) by using a "size_t" instead of an "int" argument 2009-06-01 10:50:17 +00:00
memalloc.h be more type correct and align local ckmalloc() with its underlying malloc(3) by using a "size_t" instead of an "int" argument 2009-06-01 10:50:17 +00:00
miscbltin.c Usermode portion of the support for swap allocation accounting: 2009-06-23 20:57:27 +00:00
mkbuiltins Use -s to flag POSIX's "special built-in" utilities in builtins.def. Add a 2006-04-02 18:43:33 +00:00
mkinit.c be more type correct and align local ckmalloc() with its underlying malloc(3) by using a "size_t" instead of an "int" argument 2009-06-01 10:50:17 +00:00
mknodes.c sh: Fix crash with empty functions (f() { }) introduced in r196483 2009-08-28 22:41:25 +00:00
mksyntax.c use explicit 'unsigned int' instead of just the implicit-style 'unsigned' to make linting tools (e.g. FlexeLint) happy, too 2009-06-01 11:38:38 +00:00
mktokens /*- or .\"- or #- to begin license clauses. 2005-01-10 08:39:26 +00:00
myhistedit.h Remove clause 3 from the UCB licenses. 2004-04-06 20:06:54 +00:00
mystring.c Remove clause 3 from the UCB licenses. 2004-04-06 20:06:54 +00:00
mystring.h Remove clause 3 from the UCB licenses. 2004-04-06 20:06:54 +00:00
nodes.c.pat sh: Fix crash with empty functions (f() { }) introduced in r196483 2009-08-28 22:41:25 +00:00
nodetypes /*- or .\"- or #- to begin license clauses. 2005-01-10 08:39:26 +00:00
options.c Fix a bug in r177497 which caused the getopts state to be reset when 'set' 2008-08-27 20:16:06 +00:00
options.h Remove clause 3 from the UCB licenses. 2004-04-06 20:06:54 +00:00
output.c Fix some issues with quoted output and shorten it in some cases. 2009-06-19 22:09:55 +00:00
output.h Remove clause 3 from the UCB licenses. 2004-04-06 20:06:54 +00:00
parser.c sh: Improve handling of setjmp/longjmp volatile: 2009-06-23 20:45:12 +00:00
parser.h Expand $LINENO to the current line number. This is required by SUSv3's "User 2008-05-15 19:55:27 +00:00
redir.c Fix race condition in noclobber option. 2009-06-20 20:44:27 +00:00
redir.h Remove clause 3 from the UCB licenses. 2004-04-06 20:06:54 +00:00
sh.1 Designate special builtins as such in command -V and type. 2009-06-24 22:04:04 +00:00
shell.h - Fix bugs where the value of arithmetic expansion$((...)) was trucated 2008-04-27 20:46:45 +00:00
show.c Output something reasonable for regular and expanded here-documents. 2006-04-14 13:59:03 +00:00
show.h Remove clause 3 from the UCB licenses. 2004-04-06 20:06:54 +00:00
TOUR Correct assorted grammos and typos. 2006-04-16 11:54:01 +00:00
trap.c Don't skip forking for an external command if any traps are active. 2009-06-13 21:10:41 +00:00
trap.h Don't skip forking for an external command if any traps are active. 2009-06-13 21:10:41 +00:00
var.c sh: Improve handling of setjmp/longjmp volatile: 2009-06-23 20:45:12 +00:00
var.h Implement the PS4 variable which is defined by the POSIX User Portability 2006-06-15 07:00:49 +00:00