Commit Graph

122768 Commits

Author SHA1 Message Date
Bobby Holley
d1a3436036 Bug 834732 - Audit callers of GetNativeContext and use AutoPushJSContext where appropriate. r=mrbkap 2013-02-26 11:04:13 -08:00
Bobby Holley
9e96be0f79 Bug 834732 - Introduce AutoPushJSContext. r=mrbkap
It's annoying to add yet another RAII class, but we're solving a different
problem here. In particular, there are lots of callers that grab a cx off
of an nsIScriptContext and use it without pushing. Most of the time this
is ok, since that cx is also the active cx. But it's hard to tell when we
might potentially violate that invariant. What's more, we don't want to just
use an nsCxPusher, because that does expensive things even when the cx matches
the one on the top of the stack. Most of these consumers should just switch
to AutoJSContext, but doing such a change en masse is a pretty risky thing to
do. So let's introduce a class that gives us good performance in the common case
and correctness in the uncommon case.
2013-02-26 11:04:12 -08:00
Bobby Holley
65edc090d7 Bug 834732 - Improve pushing in nsJSEnvironment. r=mrbkap 2013-02-26 11:04:12 -08:00
Bobby Holley
65df4a86fd Bug 834732 - Push a cx in AdoptNode. r=mrbkap 2013-02-26 11:04:12 -08:00
Bobby Holley
138401e1b0 Bug 834732 - Push a cx in nsPrincipal::SetDomain. r=mrbkap 2013-02-26 11:04:12 -08:00
Bobby Holley
40b44c1bc7 Bug 834732 - Push a cx in nsWindowSH::NewResolve. r=mrbkap 2013-02-26 11:04:11 -08:00
Bobby Holley
1ffc542460 Bug 834732 - Implement stricter cx handling in xpc_EvalInSandbox. r=mrbkap 2013-02-26 11:04:11 -08:00
Bobby Holley
51ba6ef50d Bug 834732 - Make nsCxPusher.Push(JSContext*) infallible. r=mrbkap
We leave the nsIDOMEventTarget* versions fallible for now, but this makes the
common case a lot simpler. Note that this means that pushing a null JSContext,
a bug, is no longer handled at runtime. But I think we should just assert
against it, since there are already callers that don't check the return value.
2013-02-26 11:04:11 -08:00
Bobby Holley
9190ce39d5 Bug 834732 - Remove PushBehavior. r=mrbkap
Now that we only have ALWAYS_PUSH and ASSERT_SCRIPT_CONTEXT, we have uniform
release-mode behavior everywhere. Remove the crap.
2013-02-26 11:04:11 -08:00
Bobby Holley
10b21fa400 Bug 834732 - Move cx pushing into nsPluginProtoChainInstallRunner. r=mrbkap
This gets rid of the last use of REQUIRE_SCRIPT_CONTEXT. \o/
2013-02-26 11:04:10 -08:00
Bobby Holley
6c8aaf6e25 Bug 834732 - Make nsDocShell::AddState push the JSContext if it grabs one, and remove push in nsStructuredCloneContainer. r=mrbkap
This gets rid of one of the last consumers of REQUIRE_SCRIPT_CONTEXT.
2013-02-26 11:04:10 -08:00
Bobby Holley
c6da4f2657 Bug 834732 - Make SafeAutoJSContext actually push something. r=mrbkap
Currently it never does, because the SafeJSContext doesn't have an
nsIScriptContext behind it. :-(
2013-02-26 11:04:10 -08:00
Bobby Holley
997dcc7d65 Bug 834732 - Get rid of footgun bool param for nsCxPusher and use an explicit enum. r=mrbkap
The goal here is to get rid of this crap entirely, and make nsCxPusher always
push. But that's a scary change, so we do it in chunks. This patch, in particular,
should have zero behavioral change. This means preserving some very wrong behavior.
For instance, currently SafeAutoJSContext never pushes a damn thing, because the
safe JSContext doesn't have an associated nsIScriptContext. We preserve this
behavior, and in fact convert various similarly-buggy consumers to
SafeAutoJSContext, so that we can hoist the behavioral change into a subsequent
patch.
2013-02-26 11:04:09 -08:00
Glenna Buford
10cd22acc0 Bug 835868 - Consolidate cross-process permission checks for TCPSocket. r=jdm 2013-02-26 13:57:39 -05:00
Sriram Ramasubramanian
e34d7b5105 Bug 844984: Remove overdraw in Awesomebar. [r=bnicholson] 2013-02-25 12:15:00 -08:00
Nicolas B. Pierron
886b6d7469 Bug 841666 - Use exponent over-estimation to truncate operations. r=h4writer 2013-02-26 10:54:26 -08:00
Brian Nicholson
425860bde6 Bug 844590 - Use Looper.getMainLooper() for UiAsyncTask. r=kats
--HG--
extra : rebase_source : 4e5c919cd98b30faee9d0c1e3b429e27fe7d1ea2
2013-02-25 15:15:49 -08:00
Nicolas B. Pierron
8eb41d1bd5 Bug 844305 - Check that excluded type are included before generating guards. r=bhackett 2013-02-26 10:43:32 -08:00
Nicolas B. Pierron
33b8484355 Bug 844059 - Prevent int-specialized GetElementIC to produce stub for float typed arrays. r=dvander 2013-02-26 10:40:19 -08:00
Marshall Culpepper
90d52c37e5 Bug 775281: B2G Mochitest frontend fixes to enable xpcshell from test.sh. r=jgriffin 2013-02-26 12:05:35 -06:00
Josh Matthews
35b5eb78a2 Bug 832411 - Build fix for a CLOSED TREE. 2013-02-26 13:05:05 -05:00
Kyle Machulis
c26d4228e6 Bug 843913: Set DBus watch function to null on event loop exit; r=tzimmermann 2013-02-26 10:01:48 -08:00
Jim Chen
57a92f2116 Bug 844913 - Null-check getEditable() results in GeckoInputConnection; r=cpeterson 2013-02-26 12:48:32 -05:00
Josh Matthews
61e76802ae Bug 832411 - Track geolocation requests' use of high accuracy and ensure the providers are update when necessary. r=dougt 2013-02-26 12:27:31 -05:00
Andre Reinald
0200f7ab78 Bug 809254 - New Tab (⌘T) while minimized leaves the window minimized. r=dao 2013-02-26 18:18:26 +01:00
David Rajchenbach-Teller
b0f2f97bcf Bug 840887 - Test the behavior of DirectoryIterator when the directory doesn't exist. r=froydnj 2013-02-26 12:08:51 -05:00
David Rajchenbach-Teller
d9de4189d3 Bug 840887 - DirectoryIterator.prototype.exists - asynchronous version. r=froydnj 2013-02-26 12:08:28 -05:00
David Rajchenbach-Teller
40c86b9211 Bug 840887 - Fix behavior of DirectoryIterator when the directory doesn't exist - Windows version. r=froydnj 2013-02-26 12:08:07 -05:00
David Rajchenbach-Teller
89fd452b5b Bug 840887 - Fix behavior of DirectoryIterator when the directory doesn't exist - Unix version. r=froydnj 2013-02-26 12:07:42 -05:00
David Rajchenbach-Teller
c45bf4ae63 Bug 840887 - New OS.Constants constants. r=khuey 2013-02-26 12:06:53 -05:00
Andrea Marchesini
8212b675ca Bug 843417 - LMK will never kill the Musicplayer app. r=mchen, f=jlebar 2013-02-26 12:02:32 -05:00
Andrea Marchesini
342ae1355d Bug 842986 - Implement MozFrameLoaderOwner on HTMLFrameElement. r=bz 2013-02-26 12:02:32 -05:00
Ryan VanderMeulen
854640ae1e Merge m-c to inbound. 2013-02-26 12:02:29 -05:00
Robert Longson
1216de8a05 Bug 785606 - Support viewBox=none from SVG 1.2 Tiny r=jwatt 2013-02-26 16:58:06 +00:00
Rail Aliiev
f12e7d74a0 Bug 837019 - update mozilla-central gonk snapshot (otoro). r=hwine 2013-02-26 11:55:44 -05:00
Rail Aliiev
fbf7ab3493 Bug 837019 - update mozilla-central gonk snapshot (unagi & panda). r=hwine 2013-02-26 11:55:06 -05:00
Rafael Ávila de Espíndola
5d2e6f8fa1 Bug 845277 - Asan builds burning with "js/src/jsproxy.h:346:7: error: visibility does not match previous declaration". r=bholley. 2013-02-26 11:43:13 -05:00
Ehsan Akhgari
34b8551fe3 Bug 845341 - Make sure that PrivateBrowsingUtils.permanentPrivateBrowsing does not throw if the autostart pref doesn't have a default value; r=jdm 2013-02-26 11:31:35 -05:00
Ryan VanderMeulen
a7064978d3 Merge the last PGO-green inbound changeset to m-c. 2013-02-26 10:44:46 -05:00
Matt Brubeck
4668093091 Bug 840643 - Fix exception in WeaveGlue.init that breaks Metro sync setup [r=ally] 2013-02-26 06:58:38 -08:00
Gina Yeh
f94a074431 Bug 844705 - Should send socket data in main thread, r=echou 2013-02-26 18:53:44 +08:00
Ed Morley
53600c9d44 Merge mozilla-central to mozilla-inbound 2013-02-26 10:45:52 +00:00
Hannes Verschore
7a456295a3 Bug 843866: IonMonkey: Make sure inference ran before inlining empty script, r=jandem 2013-02-26 11:20:03 +01:00
Mike Hommey
fd2a3d3551 Bug 844785 - Fix xulrunner mac builds. r=ted 2013-02-26 08:13:30 +01:00
Zuhao(Joe) Chen
27508912b9 Bug 805811 - Support bootstrapping with MacPorts; r=gps
DONTBUILD (NPOTB)
2013-02-25 19:52:36 -08:00
Ryan VanderMeulen
e44484ae04 Merge inbound to m-c. 2013-02-25 21:27:56 -05:00
Seth Fowler
bfbd6dcfd3 Bug 844403 - Make VectorImage cancel all listeners when destroyed. r=dholbert 2013-02-25 17:40:13 -08:00
Ryan VanderMeulen
1c839957d4 Backed out changeset 71a93fff7311 (bug 840360) for B2G reftest/crashtest bustage on a CLOSED TREE. 2013-02-25 19:49:19 -05:00
Ryan VanderMeulen
ad3f82f762 Backed out changeset ea8134dfa481 (bug 843619) for robocop failures. 2013-02-25 18:21:08 -05:00
Brian Hackett
97d638251f Bug 841530 - Tweaks to fit JIT inspector after the decompilerectomy, r=pierron. 2013-02-25 15:31:49 -07:00