tor-browser

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

testNestedExitStackOuter.js (709B)


      1 // Test stack reconstruction after a nested exit
      2 function testNestedExitStackInner(j, counter) {
      3  ++counter;
      4  var b = 0;
      5  for (var i = 1; i <= 9; i++) {
      6    ++b;
      7    var a;
      8    // Make sure that once everything has been traced we suddenly switch to
      9    // a different control flow the first time we run the outermost tree,
     10    // triggering a side exit.
     11    if (j < 9)
     12      a = 1;
     13    else
     14      a = 0;
     15    ++b;
     16    b += a;
     17  }
     18  return counter + b;
     19 }
     20 function testNestedExitStackOuter() {
     21  var counter = 0;
     22  for (var j = 1; j <= 9; ++j) {
     23    for (var k = 1; k <= 9; ++k) {
     24      counter = testNestedExitStackInner(j, counter);
     25    }
     26  }
     27  return counter;
     28 }
     29 //assertEq(testNestedExitStackOuter(), 81);