blob: 36b58cd6dc53ad8b9ab9093a4ea8f3106ac54c39 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
// Setting onPop handlers from breakpoint handlers works.
var g = newGlobal({newCompartment: true});
g.eval("function f(){ return 'to normalcy'; }");
var dbg = new Debugger();
var gw = dbg.addDebuggee(g);
var log;
// Set a breakpoint at the start of g.f
var gf = gw.makeDebuggeeValue(g.f);
var fStartOffset = gf.script.getLineOffsets(gf.script.startLine)[0];
gf.script.setBreakpoint(fStartOffset, {
hit: function handleHit(frame) {
log += 'b';
frame.onPop = function handlePop(c) {
log += ')';
assertEq(c.return, "to normalcy");
};
}
});
log = "";
assertEq(g.f(), "to normalcy");
assertEq(log, "b)");
|