Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
1 const Cu = Components.utils;
3 function run_test() {
4 // We rely on the crazy "wantXrays:false also causes values return from the
5 // sandbox to be waived" behavior, because it's the simplest way to get
6 // waivers out of the sandbox (which has no native objects). :-(
7 var sb = new Cu.Sandbox('http://www.example.com', {wantXrays: false});
8 Cu.evalInSandbox("this.foo = {}; Object.defineProperty(foo, 'bar', {get: function() {return {};}});", sb);
9 do_check_true(sb.foo != XPCNativeWrapper(sb.foo), "sb.foo is waived");
10 var desc = Object.getOwnPropertyDescriptor(sb.foo, 'bar');
11 var b = desc.get();
12 do_check_true(b != XPCNativeWrapper(b), "results from accessor descriptors are waived");
13 }