0e9081767ffd9528f2e63c52bfdc7a03f558479f: Bug 834732 - Introduce AutoPushJSContext. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Tue, 26 Feb 2013 11:04:12 -0800 - rev 123043
Push
23632 by bobbyholley@gmail.com at Tue, 26 Feb 2013 19:04:30 +0000
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.
79519aeac030680d215502b12195a5fdccd840c6: Bug 834732 - Improve pushing in nsJSEnvironment. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Tue, 26 Feb 2013 11:04:12 -0800 - rev 123042
Push
23632 by bobbyholley@gmail.com at Tue, 26 Feb 2013 19:04:30 +0000
Bug 834732 - Improve pushing in nsJSEnvironment. r=mrbkap
e065138ccd48b449a199913da58bbc9f5e8addaf: Bug 834732 - Push a cx in AdoptNode. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Tue, 26 Feb 2013 11:04:12 -0800 - rev 123041
Push
23632 by bobbyholley@gmail.com at Tue, 26 Feb 2013 19:04:30 +0000
Bug 834732 - Push a cx in AdoptNode. r=mrbkap
7b5cc572e391a1d34e0ec46520a21e1130fcb68a: Bug 834732 - Push a cx in nsPrincipal::SetDomain. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Tue, 26 Feb 2013 11:04:12 -0800 - rev 123040
Push
23632 by bobbyholley@gmail.com at Tue, 26 Feb 2013 19:04:30 +0000
Bug 834732 - Push a cx in nsPrincipal::SetDomain. r=mrbkap
45e051989f292a12af607be12b2ccc55c980cb45: Bug 834732 - Push a cx in nsWindowSH::NewResolve. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Tue, 26 Feb 2013 11:04:11 -0800 - rev 123039
Push
23632 by bobbyholley@gmail.com at Tue, 26 Feb 2013 19:04:30 +0000
Bug 834732 - Push a cx in nsWindowSH::NewResolve. r=mrbkap
19593a7c78f1a86a829503c1e5665661f54c4d04: Bug 834732 - Implement stricter cx handling in xpc_EvalInSandbox. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Tue, 26 Feb 2013 11:04:11 -0800 - rev 123038
Push
23632 by bobbyholley@gmail.com at Tue, 26 Feb 2013 19:04:30 +0000
Bug 834732 - Implement stricter cx handling in xpc_EvalInSandbox. r=mrbkap
d6766dee457e2b4d59ca65c4da87911caf450b33: Bug 834732 - Make nsCxPusher.Push(JSContext*) infallible. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Tue, 26 Feb 2013 11:04:11 -0800 - rev 123037
Push
23632 by bobbyholley@gmail.com at Tue, 26 Feb 2013 19:04:30 +0000
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.
471fe31fc325774e0aa26b39ec442e23b5cb1e2e: Bug 834732 - Remove PushBehavior. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Tue, 26 Feb 2013 11:04:11 -0800 - rev 123036
Push
23632 by bobbyholley@gmail.com at Tue, 26 Feb 2013 19:04:30 +0000
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.
90724209f5552fc11863bf81d4d0b82074276684: Bug 834732 - Move cx pushing into nsPluginProtoChainInstallRunner. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Tue, 26 Feb 2013 11:04:10 -0800 - rev 123035
Push
23632 by bobbyholley@gmail.com at Tue, 26 Feb 2013 19:04:30 +0000
Bug 834732 - Move cx pushing into nsPluginProtoChainInstallRunner. r=mrbkap
This gets rid of the last use of REQUIRE_SCRIPT_CONTEXT. \o/
34e3e1156a7f177b8300a330bb18934174dd2f90: Bug 834732 - Make nsDocShell::AddState push the JSContext if it grabs one, and remove push in nsStructuredCloneContainer. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Tue, 26 Feb 2013 11:04:10 -0800 - rev 123034
Push
23632 by bobbyholley@gmail.com at Tue, 26 Feb 2013 19:04:30 +0000
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.
ebd40f774d14531e466ea36f7c5eaf4e13fa1243: Bug 834732 - Make SafeAutoJSContext actually push something. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Tue, 26 Feb 2013 11:04:10 -0800 - rev 123033
Push
23632 by bobbyholley@gmail.com at Tue, 26 Feb 2013 19:04:30 +0000
Bug 834732 - Make SafeAutoJSContext actually push something. r=mrbkap
Currently it never does, because the SafeJSContext doesn't have an
nsIScriptContext behind it. :-(
7736f5d80843cc3b3bcc817852753af51d6909c0: Bug 834732 - Get rid of footgun bool param for nsCxPusher and use an explicit enum. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Tue, 26 Feb 2013 11:04:09 -0800 - rev 123032
Push
23632 by bobbyholley@gmail.com at Tue, 26 Feb 2013 19:04:30 +0000
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.
8d8cb708ed97dfd44b171028570c873d84e0157f: Bug 835868 - Consolidate cross-process permission checks for TCPSocket. r=jdm
Glenna Buford <glennaL.buford@gmail.com> - Tue, 26 Feb 2013 13:57:39 -0500 - rev 123031
Push
23631 by josh@joshmatthews.net at Tue, 26 Feb 2013 18:58:25 +0000
Bug 835868 - Consolidate cross-process permission checks for TCPSocket. r=jdm
29de190ac31c1b28b6f41259b679dfcbd20a6e86: Bug 844984: Remove overdraw in Awesomebar. [r=bnicholson]
Sriram Ramasubramanian <sriram@mozilla.com> - Mon, 25 Feb 2013 12:15:00 -0800 - rev 123030
Push
23630 by sramasubramanian@mozilla.com at Tue, 26 Feb 2013 18:57:48 +0000
Bug 844984: Remove overdraw in Awesomebar. [r=bnicholson]
6a930768eb8298f33eb36ae953ff5dcc43c4dca3: Bug 841666 - Use exponent over-estimation to truncate operations. r=h4writer
Nicolas B. Pierron <nicolas.b.pierron@mozilla.com> - Mon, 25 Feb 2013 15:41:06 -0800 - rev 123029
Push
23629 by npierron@mozilla.com at Tue, 26 Feb 2013 18:56:31 +0000
Bug 841666 - Use exponent over-estimation to truncate operations. r=h4writer
018649ef8ce6b1404497be8c45311f9ef0f4b3be: Bug 844590 - Use Looper.getMainLooper() for UiAsyncTask. r=kats
Brian Nicholson <bnicholson@mozilla.com> - Mon, 25 Feb 2013 15:15:49 -0800 - rev 123028
Push
23628 by bnicholson@mozilla.com at Tue, 26 Feb 2013 18:50:33 +0000
Bug 844590 - Use Looper.getMainLooper() for UiAsyncTask. r=kats
9c97e01125cc15fc83ec327bdc29980fc7d8f9bf: Bug 844305 - Check that excluded type are included before generating guards. r=bhackett
Nicolas B. Pierron <nicolas.b.pierron@mozilla.com> - Mon, 25 Feb 2013 16:27:51 -0800 - rev 123027
Push
23627 by npierron@mozilla.com at Tue, 26 Feb 2013 18:45:53 +0000
Bug 844305 - Check that excluded type are included before generating guards. r=bhackett
729d41f6743b5e2711d530cc413f7499babb60a7: Bug 844059 - Prevent int-specialized GetElementIC to produce stub for float typed arrays. r=dvander
Nicolas B. Pierron <nicolas.b.pierron@mozilla.com> - Mon, 25 Feb 2013 15:34:31 -0800 - rev 123026
Push
23626 by npierron@mozilla.com at Tue, 26 Feb 2013 18:42:25 +0000
Bug 844059 - Prevent int-specialized GetElementIC to produce stub for float typed arrays. r=dvander
4b91cf1b0430921f322b244356770c625e1ec42f: Bug 775281: B2G Mochitest frontend fixes to enable xpcshell from test.sh. r=jgriffin
Marshall Culpepper <marshall@mozilla.com> - Tue, 26 Feb 2013 12:05:35 -0600 - rev 123025
Push
23625 by mculpepper@mozilla.com at Tue, 26 Feb 2013 18:30:21 +0000
Bug 775281: B2G Mochitest frontend fixes to enable xpcshell from test.sh. r=jgriffin
b5ec301ad6c04f33cb0b63ddb10b2ce8f1fbc444: Bug 832411 - Build fix for a CLOSED TREE.
Josh Matthews <josh@joshmatthews.net> - Tue, 26 Feb 2013 13:05:05 -0500 - rev 123024
Push
23624 by josh@joshmatthews.net at Tue, 26 Feb 2013 18:05:14 +0000
Bug 832411 - Build fix for a CLOSED TREE.