diff options
Diffstat (limited to 'js/src/jit-test/tests/basic/bug1106982-2.js')
-rw-r--r-- | js/src/jit-test/tests/basic/bug1106982-2.js | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/basic/bug1106982-2.js b/js/src/jit-test/tests/basic/bug1106982-2.js new file mode 100644 index 000000000..378d10f51 --- /dev/null +++ b/js/src/jit-test/tests/basic/bug1106982-2.js @@ -0,0 +1,20 @@ +var x = "wrong"; +var t = {x: "x"}; +var hits = 0; +var p = new Proxy(t, { + has(t, id) { + var found = id in t; + if (++hits == 2) + delete t[id]; + return found; + }, + get(t, id) { return t[id]; } +}); +evaluate(`function testFunc() { + x += " x"; +}`); + +var cloneFunc = clone(testFunc, p); +cloneFunc(); +assertEq(hits, 2); +assertEq(t.x, "undefined x"); |