Commit Graph

6 Commits

Author SHA1 Message Date
Boris Zbarsky
fc510477e7 Bug 1465602 part 2. Fix the interaction of default toJSON with Func-controlled exposure that examines the object's global. r=qdot 2018-06-01 12:17:10 -04:00
Boris Zbarsky
9559f07c43 Bug 1436276. Bindings should create their return promises in the current compartment even when called over Xrays. r=bholley
These are cases that are implementing the "convert an exception to a Promise"
steps of the Web IDL spec.  Typically the exception is thrown in the current
compartment; the Promise returned should simply match that.  Otherwise we can
end up with a situation in which the promise doesn't actaully have access to
its rejection value, which will cause problems if someone uses then() on the
promise: the return value of the then() call will get a sanitized exception
instead of the real one.

We _could_ try to match the actual compartment of the exception, in theory.
But it's not clear why this would be preferable to using the current
compartment, even if there were cases in which the exception _doesn't_ match
the current compartment.  Which there likely are not.

MozReview-Commit-ID: Ac2BHIHxfvY
2018-02-10 01:34:10 -05:00
Boris Zbarsky
a4752db033 Bug 1424362. Change test_exceptionSanitization.html to not depend on feed: protocol bits, because those are going away. r=qdot
MozReview-Commit-ID: ESBwyNuMF9X
2017-12-08 22:01:16 -05:00
Boris Zbarsky
2a13ea5f22 Bug 1334537. Make sure to clear out our external string cache if the length doesn't match, since our length no longer needs to match our stringbuffer. r=froydnj
Without this change, we could do a "short" get of a string (e.g. from
XMLHttpRequest), then do another get that returns the same stringbuffer but a
longer length.  But we wouldn't notice, hit our cache, and return the same,
too-short, external string.  The site would not see the new data it should have
seen.
2017-02-01 15:29:47 -05:00
Boris Zbarsky
aa177c6c4a Bug 1323324 tests. r=till 2016-12-19 15:38:44 -08:00
Kyle Huey
6831932bf4 Bug 1252268: If the slow script dialog aborts an interval timer callback, don't schedule it again. r=bz 2016-03-10 01:50:56 -08:00