1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/js/src/jit-test/tests/debug/Debugger-onNewGlobalObject-10.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,27 @@ 1.4 +// An earlier onNewGlobalObject handler returning a 'throw' resumption 1.5 +// value causes later handlers not to run. 1.6 + 1.7 +load(libdir + 'asserts.js'); 1.8 + 1.9 +var dbg1 = new Debugger; 1.10 +var dbg2 = new Debugger; 1.11 +var dbg3 = new Debugger; 1.12 +var log; 1.13 +var count; 1.14 + 1.15 +dbg1.onNewGlobalObject = dbg2.onNewGlobalObject = dbg3.onNewGlobalObject = function (global) { 1.16 + count++; 1.17 + log += count; 1.18 + if (count == 2) 1.19 + return { throw: "snoo" }; 1.20 + return undefined; 1.21 +}; 1.22 +dbg2.uncaughtExceptionHook = function (exn) { 1.23 + assertEq(/disallowed/.test(exn), true); 1.24 + log += 'u'; 1.25 +}; 1.26 + 1.27 +log = ''; 1.28 +count = 0; 1.29 +assertEq(typeof newGlobal(), "object"); 1.30 +assertEq(log, '12u3');