|
1 // Disabling a Debugger object causes events to stop being delivered to it |
|
2 // immediately, even if we're in the middle of dispatching. |
|
3 |
|
4 var g = newGlobal(); |
|
5 var log; |
|
6 |
|
7 var arr = []; |
|
8 for (var i = 0; i < 4; i++) { |
|
9 arr[i] = new Debugger(g); |
|
10 arr[i].num = i; |
|
11 arr[i].onDebuggerStatement = function () { |
|
12 log += this.num; |
|
13 // Disable them all. |
|
14 for (var j = 0; j < arr.length; j++) |
|
15 arr[j].enabled = false; |
|
16 }; |
|
17 } |
|
18 |
|
19 log = ''; |
|
20 g.eval("debugger; debugger;"); |
|
21 assertEq(log, '0'); |