js/src/jit-test/tests/arrow-functions/this-6.js

Thu, 15 Jan 2015 15:59:08 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 15 Jan 2015 15:59:08 +0100
branch
TOR_BUG_9701
changeset 10
ac0c01689b40
permissions
-rw-r--r--

Implement a real Private Browsing Mode condition by changing the API/ABI;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

michael@0 1 // Eval expressions in arrow functions use the correct |this| value.
michael@0 2
michael@0 3 function Dog(name) {
michael@0 4 this.name = name;
michael@0 5 this.getName = () => eval("this.name");
michael@0 6 this.getNameHard = () => eval("(() => this.name)()");
michael@0 7 }
michael@0 8
michael@0 9 var d = new Dog("Max");
michael@0 10 assertEq(d.getName(), d.name);
michael@0 11 assertEq(d.getNameHard(), d.name);

mercurial