tor-browser

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

script-filename-validation-2.js (584B)


      1 load(libdir + "asserts.js");
      2 load(libdir + 'bytecode-cache.js');
      3 
      4 // Install the callback after evaluating the script and saving the bytecode
      5 // (generation 0). XDR decoding after this should throw.
      6 
      7 var g = newGlobal({cloneSingletons: true});
      8 test = `
      9  assertEq(generation, 0);
     10 `;
     11 assertThrowsInstanceOf(() => {
     12  evalWithCache(test, {
     13    global: g,
     14    checkAfter: function (ctx) {
     15      assertEq(g.generation, 0);
     16      setTestFilenameValidationCallback();
     17    }
     18  });
     19 }, g.InternalError);
     20 
     21 // Generation should be 1 (XDR decoding threw an exception).
     22 assertEq(g.generation, 1);