tor-browser

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

bug1773496.js (659B)


      1 var shouldBail = false;
      2 function foo() {
      3  if (shouldBail) {
      4    bailout();
      5    return 0;
      6  }
      7  for (var i = 0; i < 1000; i++) {}
      8  return { value: undefined, done: true }
      9 }
     10 
     11 const iterable = {
     12  [Symbol.iterator]() {
     13    return {
     14      i: 0,
     15      next() {
     16        return { value: this.i++, done: false }
     17      },
     18      return() {
     19        return foo();
     20      }
     21    };
     22  }
     23 }
     24 
     25 function closeIter() {
     26  with ({}) {}
     27  for (var x of iterable) {
     28    if (x == 2) {
     29      break;
     30    }
     31  }
     32 }
     33 
     34 with ({}) {}
     35 for (var i = 0; i < 100; i++) {
     36  closeIter();
     37 }
     38 
     39 shouldBail = true;
     40 
     41 caught = false;
     42 try {
     43  closeIter();
     44 } catch {
     45  caught = true;
     46 }
     47 assertEq(caught, true);