js/src/jit-test/tests/basic/testBug502914.js

Sat, 03 Jan 2015 20:18:00 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Sat, 03 Jan 2015 20:18:00 +0100
branch
TOR_BUG_3246
changeset 7
129ffea94266
permissions
-rw-r--r--

Conditionally enable double key logic according to:
private browsing mode or privacy.thirdparty.isolate preference and
implement in GetCookieStringCommon and FindCookie where it counts...
With some reservations of how to convince FindCookie users to test
condition and pass a nullptr when disabling double key logic.

     1 function testBug502914() {
     2     // Assigning a non-function to a function-valued property on trace should
     3     // bump the shape.
     4     function f1() {}
     5     function C() {}
     6     var x = C.prototype = {m: f1};
     7     x.m();  // brand scope
     8     var arr = [new C, new C, new C, x];
     9     try {
    10         for (var i = 0; i < 4; i++) {
    11             arr[i].m = 12;
    12             x.m();  // should throw last time through
    13         }
    14     } catch (exc) {
    15         return exc.constructor.name;
    16     }
    17     return "no exception";
    18 }
    19 assertEq(testBug502914(), "TypeError");

mercurial