Frame-eval-12.js (476B)
1 // The arguments can escape from a function via a debugging hook. 2 3 var g = newGlobal({newCompartment: true}); 4 var dbg = new Debugger(g); 5 6 // capture arguments object and test function 7 dbg.onDebuggerStatement = function (frame) { 8 var args = frame.older.environment.parent.getVariable('arguments'); 9 assertEq(args.missingArguments, true); 10 }; 11 g.eval("function h() { debugger; }"); 12 g.eval("function f() { var x = 0; return function() { x++; h() } }"); 13 g.eval("f('ponies')()");