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