diff options
author | Jilles Tjoelker <jilles@FreeBSD.org> | 2011-01-15 21:09:00 +0000 |
---|---|---|
committer | Jilles Tjoelker <jilles@FreeBSD.org> | 2011-01-15 21:09:00 +0000 |
commit | a043cc4c68b0e8b0ed716275ac3df27621d1b3f0 (patch) | |
tree | 86ec116a5ba2f93c9f0fca869422376bb05458fa /tools | |
parent | 951f1334b64f9b2f90b785a8d01c96c5893bcb3d (diff) | |
download | src-a043cc4c68b0e8b0ed716275ac3df27621d1b3f0.tar.gz src-a043cc4c68b0e8b0ed716275ac3df27621d1b3f0.zip |
sh: Fix some things about -- in trap:
* Make 'trap --' do the same as 'trap' instead of nothing.
* Make '--' stop option processing (note that '-' action is not an option).
Side effect: The error message for an unknown option is different.
Notes
Notes:
svn path=/head/; revision=217461
Diffstat (limited to 'tools')
-rw-r--r-- | tools/regression/bin/sh/builtins/trap5.0 | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/tools/regression/bin/sh/builtins/trap5.0 b/tools/regression/bin/sh/builtins/trap5.0 new file mode 100644 index 000000000000..56e0fb1b89fe --- /dev/null +++ b/tools/regression/bin/sh/builtins/trap5.0 @@ -0,0 +1,19 @@ +# $FreeBSD$ + +set -e +trap - USR1 +initial=$(trap) +trap -- -l USR1 +added=$(trap) +[ -n "$added" ] +trap - USR1 +second=$(trap) +[ "$initial" = "$second" ] +eval "$added" +added2=$(trap) +added3=$(trap --) +[ "$added" = "$added2" ] +[ "$added2" = "$added3" ] +trap -- - USR1 +third=$(trap) +[ "$initial" = "$third" ] |