Source code
Revision control
Copy as Markdown
Other Tools
// Referents of Debugger.Scripts in other compartments always survive per-compartment GC.
var g = newGlobal({newCompartment: true});
var dbg = Debugger(g);
var arr = [];
dbg.onDebuggerStatement = function (frame) { arr.push(frame.script); };
g.eval("for (var i = 0; i < 100; i++) Function('debugger;')();");
assertEq(arr.length, 100);
gc(g);
for (var i = 0; i < arr.length; i++)
assertEq(arr[i].lineCount, 4);
gc();