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