// uncaughtExceptionHook resumption value other than undefined causes further // hooks to be skipped. var g = newGlobal(); var log; function makeDebug(g, name) { var dbg = new Debugger(g); dbg.onDebuggerStatement = function (frame) { log += name; throw new Error(name); }; dbg.uncaughtExceptionHook = function (exc) { assertEq(exc.message, name); return name == "2" ? {return: 42} : undefined; }; } var arr = []; for (var i = 0; i < 6; i++) arr[i] = makeDebug(g, "" + i); log = ''; assertEq(g.eval("debugger;"), 42); assertEq(log, "012");