js/src/jit-test/tests/debug/dispatch-02.js

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/js/src/jit-test/tests/debug/dispatch-02.js	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,21 @@
     1.4 +// Disabling a Debugger object causes events to stop being delivered to it
     1.5 +// immediately, even if we're in the middle of dispatching.
     1.6 +
     1.7 +var g = newGlobal();
     1.8 +var log;
     1.9 +
    1.10 +var arr = [];
    1.11 +for (var i = 0; i < 4; i++) {
    1.12 +    arr[i] = new Debugger(g);
    1.13 +    arr[i].num = i;
    1.14 +    arr[i].onDebuggerStatement = function () {
    1.15 +        log += this.num;
    1.16 +        // Disable them all.
    1.17 +        for (var j = 0; j < arr.length; j++)
    1.18 +            arr[j].enabled = false;
    1.19 +    };
    1.20 +}
    1.21 +
    1.22 +log = '';
    1.23 +g.eval("debugger; debugger;");
    1.24 +assertEq(log, '0');

mercurial