summary refs log tree commit diff
path: root/bin/cash/tests/builtins/trap11.0
diff options
context:
space:
mode:
Diffstat (limited to 'bin/cash/tests/builtins/trap11.0')
-rw-r--r--bin/cash/tests/builtins/trap11.08
1 files changed, 8 insertions, 0 deletions
diff --git a/bin/cash/tests/builtins/trap11.0 b/bin/cash/tests/builtins/trap11.0
new file mode 100644
index 00000000..63eddeee
--- /dev/null
+++ b/bin/cash/tests/builtins/trap11.0
@@ -0,0 +1,8 @@
+# $FreeBSD: releng/12.0/bin/sh/tests/builtins/trap11.0 230212 2012-01-16 11:07:46Z dumbbell $
+
+# Check that the return statement will not break the USR1 trap, ie. all
+# trap commands are executed before the script resumes.
+
+result=$(${SH} -c 'trap "printf trap; echo ped" USR1; f() { return $(kill -USR1 $$); }; f')
+test $? -eq 0 || exit 1
+test "$result" = trapped || exit 1