tor-browser

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

max-string-length.js (479B)


      1 load(libdir + "asserts.js");
      2 
      3 const MaxStringLength = 2**30 - 2;
      4 
      5 // First check MaxStringLength is accurate.
      6 assertThrowsInstanceOf(() =>  "a".repeat(MaxStringLength + 1),
      7                       RangeError);
      8 
      9 // escape() must handle uint32_t overflow correctly.
     10 var s = "\u0390".repeat(MaxStringLength);
     11 assertEq(s.length, MaxStringLength);
     12 var ex = null;
     13 try {
     14    escape(s);
     15 } catch (e) {
     16    ex = e;
     17 }
     18 assertEq(ex === "out of memory" || (ex instanceof InternalError), true);