summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/debug/onExceptionUnwind-resumption-04.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/jit-test/tests/debug/onExceptionUnwind-resumption-04.js')
-rw-r--r--js/src/jit-test/tests/debug/onExceptionUnwind-resumption-04.js17
1 files changed, 17 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/debug/onExceptionUnwind-resumption-04.js b/js/src/jit-test/tests/debug/onExceptionUnwind-resumption-04.js
new file mode 100644
index 0000000000..3b5f777952
--- /dev/null
+++ b/js/src/jit-test/tests/debug/onExceptionUnwind-resumption-04.js
@@ -0,0 +1,17 @@
+// Check that an onExceptionUnwind hook can force a frame to terminate.
+
+var g = newGlobal({newCompartment: true});
+var dbg = Debugger(g);
+g.eval("function f() { throw 'ksnife'; }");
+var log = '';
+dbg.onDebuggerStatement = function (frame) {
+ log += 'd1';
+ assertEq(frame.eval("f();"), null);
+ log += 'd2';
+};
+dbg.onExceptionUnwind = function (frame, exc) {
+ log += 'u';
+ return null;
+};
+g.eval("debugger;");
+assertEq(log, "d1ud2");