Source code

Revision control

Copy as Markdown

Other Tools

// Creating a global within an onNewGlobalObject handler causes a recursive handler invocation.
//
// This isn't really desirable behavior, as presumably a global created while a
// handler is running is one the debugger is creating for its own purposes and
// should not be observed, but if this behavior changes, we sure want to know.
var dbg = new Debugger;
var log;
var depth;
dbg.onNewGlobalObject = function (global) {
log += '('; depth++;
assertEq(global.seen, undefined);
global.seen = true;
if (depth < 3)
newGlobal();
log += ')'; depth--;
};
log = '';
depth = 0;
newGlobal();
assertEq(log, '((()))');