aboutsummaryrefslogtreecommitdiffstats
path: root/tests/dbg-support2.tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests/dbg-support2.tests')
-rwxr-xr-xtests/dbg-support2.tests26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/dbg-support2.tests b/tests/dbg-support2.tests
new file mode 100755
index 0000000..fdc0f31
--- /dev/null
+++ b/tests/dbg-support2.tests
@@ -0,0 +1,26 @@
+#!../bash
+#
+# Test correct trap return codes = 2 means skip execution.
+shopt -s extdebug
+print_trap() {
+ echo "lineno: $1 ($LINENO) ${FUNCNAME[1]}"
+ if [[ $debug_exit == 2 ]] ; then
+ debug_exit=0
+ return 2
+ fi
+ return 0
+}
+
+debug_exit=0
+trap 'print_trap $LINENO' DEBUG
+
+x=1
+echo "x is $x"
+debug_exit=2
+x=2
+echo "x is $x"
+
+#;;; Local Variables: ***
+#;;; mode:shell-script ***
+#;;; eval: (sh-set-shell "bash") ***
+#;;; End: ***