Frame-this-02.js (419B)
1 // Frame.prototype.this in strict direct eval frames 2 3 var g = newGlobal({newCompartment: true}); 4 var dbg = new Debugger(g); 5 var hits = 0; 6 dbg.onDebuggerStatement = function (frame) { 7 hits++; 8 assertEq(frame.this, g.v); 9 }; 10 11 g.eval("function f() { 'use strict'; eval('debugger;'); }"); 12 13 g.eval("Boolean.prototype.f = f; v = true; v.f();"); 14 g.eval("f.call(v);"); 15 g.eval("v = null; f.call(v);"); 16 17 assertEq(hits, 3);