tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

Frame-identity-05.js (486B)


      1 // Suspended generators keep their associated Debugger.Frames gc-alive.
      2 
      3 var g = newGlobal({newCompartment: true});
      4 g.eval("function* f() { debugger; yield 1; debugger; }");
      5 var dbg = new Debugger(g);
      6 var hits = 0;
      7 dbg.onDebuggerStatement = function (frame) {
      8    if (hits === 0)
      9        frame.seen = true;
     10    else
     11        assertEq(frame.seen, true);
     12    gc();
     13    hits++;
     14 };
     15 var it = g.f();
     16 gc();
     17 assertEq(it.next().value, 1);
     18 gc();
     19 assertEq(it.next().done, true);
     20 assertEq(hits, 2);