Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
michael@0 | 1 | const Cu = Components.utils; |
michael@0 | 2 | |
michael@0 | 3 | function run_test() { |
michael@0 | 4 | // We rely on the crazy "wantXrays:false also causes values return from the |
michael@0 | 5 | // sandbox to be waived" behavior, because it's the simplest way to get |
michael@0 | 6 | // waivers out of the sandbox (which has no native objects). :-( |
michael@0 | 7 | var sb = new Cu.Sandbox('http://www.example.com', {wantXrays: false}); |
michael@0 | 8 | Cu.evalInSandbox("this.foo = {}; Object.defineProperty(foo, 'bar', {get: function() {return {};}});", sb); |
michael@0 | 9 | do_check_true(sb.foo != XPCNativeWrapper(sb.foo), "sb.foo is waived"); |
michael@0 | 10 | var desc = Object.getOwnPropertyDescriptor(sb.foo, 'bar'); |
michael@0 | 11 | var b = desc.get(); |
michael@0 | 12 | do_check_true(b != XPCNativeWrapper(b), "results from accessor descriptors are waived"); |
michael@0 | 13 | } |