blob: 4d17304053de5df0ed91167e0a1a651db92cb90c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
// var statements in non-strict evalWithBindings code behave like non-strict direct eval.
var g = newGlobal({newCompartment: true});
var dbg = new Debugger(g);
var log;
dbg.onDebuggerStatement = function (frame) {
log += 'd';
assertEq(frame.evalWithBindings("var i = v; 42;", { v: 'inner' }).return, 42);
};
g.i = 'outer';
log = '';
assertEq(g.eval('debugger; i;'), 'inner');
assertEq(log, 'd');
g.j = 'outer';
log = '';
assertEq(g.eval('debugger; j;'), 'outer');
assertEq(log, 'd');
|