59f99d8d2cc6f680db7bcaf7d9073e167ba32f18: Bug 658909 - Remove GWNOJO from PreserveWrapper. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:16 -0700 - rev 125068
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Remove GWNOJO from PreserveWrapper. r=mrbkap
efd70f9744f065d1ae1abfa4692cc1e441dab762: Bug 658909 - Remove GWNOJO from nsDOMClassInfo. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:16 -0700 - rev 125067
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Remove GWNOJO from nsDOMClassInfo. r=mrbkap
d1f7b662ba9ac6f8e0dad3bf167da335798f78b6: Bug 658909 - Remove GWNOJO from AccessCheck. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:16 -0700 - rev 125066
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Remove GWNOJO from AccessCheck. r=mrbkap
3290d77fb6acc52c468956e98cea52e0a19ef164: Bug 658909 - Remove GWNOJO from nsXPConnect. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:16 -0700 - rev 125065
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Remove GWNOJO from nsXPConnect. r=mrbkap
519f06cae45467bb81195a608319f9d52db3c2ef: Bug 658909 - Remove GWNOJO from XPCVariant. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:16 -0700 - rev 125064
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Remove GWNOJO from XPCVariant. r=mrbkap The old code seems to be deciding whether we have a double-wrapped object by checking _either_ the rv of GWNOJO _or_ the potential slim wrapper. This is nonsensical, because double-wrapped objects are never slim wrappers. Furthermore, that variable here is named 'proto', which further suggests that this code is nonsensical. So let's just check for WNs. Also, it seems pretty wack to be innerizing here before storing the jsval, but I'm going to leave that for now.
218ca8a31f9af7d8c00e09fddc2641e690ce1fa4: Bug 658909 - Remove GWNOJO from XPCJSID. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:15 -0700 - rev 125063
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Remove GWNOJO from XPCJSID. r=mrbkap
2b42cac96ee70d611e27a130f617eeaa3cf3ff45: Bug 658909 - Remove GWNOJO from JSValToXPCException. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:15 -0700 - rev 125062
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Remove GWNOJO from JSValToXPCException. r=mrbkap
37b2fc91791c24c4d11d506dc2fe81d90cf255f2: Bug 658909 - Remove GWNOJO from JSObject2NativeInterface. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:15 -0700 - rev 125061
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Remove GWNOJO from JSObject2NativeInterface. r=mrbkap
06852afa8721257547f926a6343d98c28c03d87f: Bug 658909 - Remove GWNOJO for helper stubs. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:15 -0700 - rev 125060
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Remove GWNOJO for helper stubs. r=mrbkap
5dbc6f79a2a2b39840851338db0f3737f009110b: Bug 658909 - Remove GWNOJO from MarkWrappedNative. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:15 -0700 - rev 125059
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Remove GWNOJO from MarkWrappedNative. r=mrbkap
b0899c816e8f9049c1fbfc07ff2048661641cdbc: Bug 658909 - Add a new, much simpler API for getting WNs from JS objects. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:15 -0700 - rev 125058
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Add a new, much simpler API for getting WNs from JS objects. r=mrbkap
f7874be842bc1c8ae8d758319cde93a81fb64f92: Bug 658909 - Stop doing all the crazy stuff in GetWrappedNativeOfJSObject. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:14 -0700 - rev 125057
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Stop doing all the crazy stuff in GetWrappedNativeOfJSObject. r=mrbkap
94014e4d1ab51a92c39f58fb6899c5f55900eb8f: Bug 658909 - Add a hack to support calling nohelper XPCWN methods without the proper |this|. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:14 -0700 - rev 125056
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Add a hack to support calling nohelper XPCWN methods without the proper |this|. r=mrbkap
682ad22f239f7771fdb5f9fe713d8a99c960a158: Bug 658909 - Use JS_{,Strict}PropertyOp instead of null when defining value props in nsDOMClassInfo. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:14 -0700 - rev 125055
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Use JS_{,Strict}PropertyOp instead of null when defining value props in nsDOMClassInfo. r=mrbkap Using JSPropertyOp means a null shape getter, whereas null means that the shape uses the class getter. This means that stuff like window.top, which is defined as a non-configurable |own| property in nsDOMClassInfo, was getting set up with XPC_WN_Helper_GetProperty as its get operation. But this confused SandboxProxyHandler, which explicitly avoids rebinding class getters/setters, which in turn meant that our sandboxPrototype feature was relying on the crazy prototype-climbing behavior of GetWrappedNativeOfJSObject to make stuff like |this.top| work. We're removing this behavior, so we need to fix nsDOMClassInfo here. Here are some DefineProperty cases that I left with null getters/setters: * nsDOMClassInfo::ResolveConstructor * The child window stuff at the bottom of nsWindowSH::NewResolve * Named item resolution in nsNamedArraySH::NewResolve * document.all stuff (scary!) * nsHTMLDocumentSH::NewResolve * nsHTMLFormElementSH::NewResolve * nsStorage2SH::NewResolve
d4253db9e56065538c084b95ab87405172af85a6: Bug 658909 - Implement carefully-checked unwrapping in XPCCallContext. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:14 -0700 - rev 125054
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Implement carefully-checked unwrapping in XPCCallContext. r=mrbkap
cd8e50acc2fe2159743983110da60fd11a339a5b: Bug 658909 - Set args at XPCCallContext construct time in XPC_WN_GetterSetter. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:13 -0700 - rev 125053
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Set args at XPCCallContext construct time in XPC_WN_GetterSetter. r=mrbkap It's not clear to me why it's done this way, but it confuses our ability to determine during wrapper lookup whether we're doing a set or a get. This aligns the behavior with XPC_WN_CallMethod, including passing JSID_VOID for the name (which is safe because XPCCallContext explicitly special-cases JSID_VOID and doesn't call SetName in that case).
de490b035b9cf4f1e9f6be7d88cbb0da5d710ad5: Bug 658909 - Initialize the same fields in both XPCCallContext constructors. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:13 -0700 - rev 125052
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Initialize the same fields in both XPCCallContext constructors. r=mrbkap This is a huge footgun. XPCCallContext is hot, but it's not too hot to be safe here. Garbage XPCWN and JSObject pointers are bad.
ef12935784712436a7393e827c1ee84f42432382: Bug 658909 - Remove unnecessary ccx param. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:13 -0700 - rev 125051
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Remove unnecessary ccx param. r=mrbkap
9f153c67ec84ac78d0b28f8e2284213704d0f421: Bug 658909 - Make isSafeToUnwrap pseudo-dynamic for SOWs. r=mrbkap
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:13 -0700 - rev 125050
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Make isSafeToUnwrap pseudo-dynamic for SOWs. r=mrbkap This can go away as soon as XBL scopes are no longer behind a pref.
aa68b74a149563279ad94beaf6642733c912ee87: Bug 658909 - Force |this| computation in SandboxCallableProxyHandler::call when using Xrays. r=bz
Bobby Holley <bobbyholley@gmail.com> - Sat, 16 Mar 2013 22:58:12 -0700 - rev 125049
Push 24762 by bobbyholley@gmail.com at Sun, 17 Mar 2013 05:58:40 +0000
Bug 658909 - Force |this| computation in SandboxCallableProxyHandler::call when using Xrays. r=bz Comment says it all.
(0) -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 +300000 tip