aboutsummaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorJilles Tjoelker <jilles@FreeBSD.org>2011-01-15 21:09:00 +0000
committerJilles Tjoelker <jilles@FreeBSD.org>2011-01-15 21:09:00 +0000
commita043cc4c68b0e8b0ed716275ac3df27621d1b3f0 (patch)
tree86ec116a5ba2f93c9f0fca869422376bb05458fa /tools
parent951f1334b64f9b2f90b785a8d01c96c5893bcb3d (diff)
downloadsrc-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.019
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" ]