tor-browser

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

class-05.js (674B)


      1 // |jit-test| error: TypeError
      2 
      3 let g = newGlobal();
      4 let dbg = Debugger(g);
      5 
      6 let forceException = g.eval(`
      7    (class extends class {} {
      8        // Calling this will return a primitive immediately.
      9        constructor() {
     10            debugger;
     11            return {};
     12        }
     13    })
     14 `);
     15 
     16 let handler = {
     17    hit() {
     18        return {
     19            // Force the return of an illegal value.
     20            return: 1
     21        }
     22    }
     23 };
     24 
     25 dbg.onDebuggerStatement = function(frame) {
     26    var line0 = frame.script.getOffsetLocation(frame.offset).lineNumber;
     27    var offs = frame.script.getLineOffsets(line0 + 1);
     28    frame.script.setBreakpoint(offs[0], handler);
     29 }
     30 
     31 new forceException;