Jon Coppeard
fa71007e65
Bug 848395 - GC: Move Rooted to JS namespace - rename js::Rooted to JS::Rooted outside SpiderMonkey r=terrence
...
--HG--
extra : rebase_source : 866879df05e3ec3f8e93570eb3f6b71103636b41
2013-03-06 16:41:43 +00:00
Gregory Szorc
f0b7e3972c
Merge mozilla-central into build-system
...
There were merges in configure.in and some Makefile.in. None had any
conflicts. I spot verified the Makefile.in changes and confirmed that
the changes did not touch any DIRS* variables.
2013-02-27 10:03:52 -08:00
Gregory Szorc
faf262c4ee
Merge mozilla-central into build-system
...
Only conflict was configure.in amd was due to context, not
changed lines themselves.
2013-02-25 22:09:18 -08:00
Gregory Szorc
c1b5e29e19
Bug 784841 - Part 18s: Convert /js; r=glandium
2013-02-25 12:47:22 -08:00
Bobby Holley
c014987e4f
Bug 836301 - Hoist some assertions, remove a bunch of no-op trap overrides, and add assertions that we've entered our policy. r=mrbkap
2013-02-25 13:54:18 -08:00
Bobby Holley
f84dddd71f
Bug 836301 - Hoist enter() calls from {Xray,}Wrapper::foo into Proxy::foo. r=mrbkap
2013-02-25 13:54:18 -08:00
Bobby Holley
83a57c8d91
Bug 836301 - Introduce an RAII class for entering policies. r=mrbkap
...
This will allow us to make some hard assertions that a given policy has been
entered exactly once.
2013-02-25 13:54:18 -08:00
Bobby Holley
a1a88275ee
Bug 836301 - Add Special handling to allow us to call enter() for defineProperty on Xrays. r=mrbkap
2013-02-25 13:54:17 -08:00
Bobby Holley
6f2c3cdc97
Bug 836301 - Stop using JSRESOLVE_ASSIGNING to determine GET vs SET. r=mrbkap
...
This is just a heuristic, anyway, and some of the usage is downright broken.
There are two cases here:
1 - Deciding what to do for get{Own,}PropertyDescriptor. In these cases, we can
just enter with GET and rely on the filtering machinery to filter out dangerous
setters for security wrappers.
2 - Custom Xray props. None of these make sense in a |set| context. In fact,
they generally have null setters anyway, so we can just assume GET.
The policy-entering code in XrayWrapper is super haphazard. We'll get rid of it
entirely later in these patches.
2013-02-25 13:54:17 -08:00
Bobby Holley
2473e41a58
Bug 834732 - Assert proper cx stack handling in WrapperFactory::Rewrap. r=mrbkap
2013-02-26 11:04:13 -08:00
Bobby Holley
649c8cee47
Bug 834697 - Enable XBL scopes, and disable assertion. r=bz,me
2013-02-14 15:15:59 +01:00
Ryan VanderMeulen
1568f7d987
Backed out 12 changesets (bug 834732) for b2g bustage and OSX mochitest-1 crashes on a CLOSED TREE.
2013-02-12 20:54:48 -05:00
Bobby Holley
97fd619f30
Bug 834732 - Assert proper cx stack handling in WrapperFactory::Rewrap. r=mrbkap
2013-02-13 00:22:27 +01:00
Phil Ringnalda
f3f16b4069
Back out 4d301b2bcad0:e0632e639097 (bug 836301) for Windows build bustage
...
CLOSED TREE
2013-02-22 08:41:37 -08:00
Bobby Holley
c1bc13e0dd
Bug 836301 - Hoist some assertions, remove a bunch of no-op trap overrides, and add assertions that we've entered our policy. r=mrbkap
2013-02-22 08:14:34 -08:00
Bobby Holley
1b08378825
Bug 836301 - Hoist enter() calls from {Xray,}Wrapper::foo into Proxy::foo. r=mrbkap
2013-02-22 08:14:34 -08:00
Bobby Holley
c9d462848e
Bug 836301 - Introduce an RAII class for entering policies. r=mrbkap
...
This will allow us to make some hard assertions that a given policy has been
entered exactly once.
2013-02-22 08:14:33 -08:00
Bobby Holley
bc476a22e1
Bug 836301 - Add Special handling to allow us to call enter() for defineProperty on Xrays. r=mrbkap
2013-02-22 08:14:33 -08:00
Bobby Holley
31e8680c22
Bug 836301 - Stop using JSRESOLVE_ASSIGNING to determine GET vs SET. r=mrbkap
...
This is just a heuristic, anyway, and some of the usage is downright broken.
There are two cases here:
1 - Deciding what to do for get{Own,}PropertyDescriptor. In these cases, we can
just enter with GET and rely on the filtering machinery to filter out dangerous
setters for security wrappers.
2 - Custom Xray props. None of these make sense in a |set| context. In fact,
they generally have null setters anyway, so we can just assume GET.
The policy-entering code in XrayWrapper is super haphazard. We'll get rid of it
entirely later in these patches.
2013-02-22 08:14:32 -08:00
Bobby Holley
778e86b208
Bug 839867 - Align gecko with the spec on cross-origin access to Location.hash. r=bz
...
We update the tests to cover this case. There was also a bug in the tests where
we were accidentally testing non-writable Location properties against window
rather than window.location. :-(
2013-02-11 00:05:17 +01:00
Bobby Holley
dc7e7a50d2
Bug 821850 - Dynamically waive Xray for field access by XBL script on bound nodes. r=bz
2013-02-08 14:24:22 +00:00
Bobby Holley
4b306e73c6
Bug 821850 - Expose XBL members via Xray wrappers. r=bz
2013-02-08 14:24:21 +00:00
Bobby Holley
34890dad66
Bug 821850 - Clean up security wrappers for NAC. r=bz
2013-02-08 14:24:20 +00:00
Bobby Holley
2ad47344dd
Bug 831076 - Outerize during same-compartment wrapping so that JS_Wrap* is guaranteed to outerize. r=mrbkap
2013-02-04 15:13:14 +00:00
Bobby Holley
fd4c9ea494
Bug 831076 - Outerize at the very beginning of XPConnect wrapping and remove other outerization checks. r=mrbkap
2013-02-04 15:13:13 +00:00
Peter Van der Beken
4d5c0010c4
Fix for bug 715156 (JS code no longer work for select options as array in a Greasemonkey script (index and name setters don't really work via XrayWrapper)). r=bz.
...
--HG--
extra : rebase_source : 2ced75b6d49dbab5afe9a6ce7c322bf18a634026
2013-01-14 11:29:48 +01:00
Ed Morley
bc0702d0d7
Backout f3c145bd1dd2 & 5075690572a9 for OS X startup failures
2013-01-28 11:08:21 +00:00
Peter Van der Beken
a6ea06e0ab
Fix for bug 715156 (JS code no longer work for select options as array in a Greasemonkey script (index and name setters don't really work via XrayWrapper)). r=bz.
...
--HG--
extra : rebase_source : 6bc420bd917e00a49dc5f6f3de13ff9e290c9580
2013-01-14 11:29:48 +01:00
Bobby Holley
f20eabe075
Bug 823348 - Stop checking for Xray waivers in the Xray machinery. r=mrbkap
...
All the casese where we want to waive should now be going through WaiveXrayWrapper.
2013-01-23 06:04:39 +01:00
Bobby Holley
c82ae67593
Bug 823348 - Replace security wrapper enumeration with a more rule-based approach. r=mrbkap
2013-01-23 06:04:39 +01:00
Bobby Holley
4b3c0f19a3
Bug 823348 - Hoist special cases to the top of WrapperFactory::Rewrap. r=mrbkap
...
This paves the way for more rule-based selection of wrappers in the common case.
2013-01-23 06:04:39 +01:00
Bobby Holley
6284ce3329
Bug 823348 - Move COW prototype remapping out of wrapper selection. r=mrbkap
...
It's pretty orthogonal, and makes the critical block more complicated than it
needs to be.
2013-01-23 06:04:39 +01:00
Bobby Holley
39970d33e6
Bug 823348 - Precompute various parameters in Rewrap. r=mrbkap
...
This is generally cleaner, and avoids potentially calling these functions
multiple times when we start moving this stuff around.
2013-01-23 06:04:39 +01:00
Bobby Holley
7124dc509b
Bug 823348 - Use GetXrayType for content->chrome Xray wrappers. r=mrbkap
...
There's no reason to do this any different than we do for XOWs and such. The
only thing this might conceivably support would be certain chrome XPWNs-as-COWs.
But that would require that they forced a parent in precreate without being
flagged as DOM objects in classinfo. And it's not clear why we'd want to support
that. And we're generally moving away from COWs anyway.
2013-01-23 06:04:39 +01:00
Bobby Holley
1aedd25af4
Bug 823348 - Use EnsureCompartmentPrivate In Rewrap and stop checking for null. r=mrbkap
2013-01-23 06:04:39 +01:00
Bobby Holley
33983c1d00
Bug 823348 - Make NNXOWs use an explicitly opaque Policy. r=mrbkap
...
There's no reason to be doing a dynamic check here, given that the JSClasses
will never match. Lets be explicit and safe.
2013-01-23 06:04:38 +01:00
Bobby Holley
165e39b43e
Bug 823348 - Do a better job of lying about the holder and make assertions fatal. r=mrbkap
...
I noticed this nonfatal assertion firing, unrelated to my patches. Leaking
the holder is not so great. Let's fix this for real.
2013-01-23 06:04:38 +01:00
Bobby Holley
ddf7e9edc1
Bug 823348 - Remove broken and unused __scriptOnly__ check. r=mrbkap
...
__scriptOnly__ is unused on mxr and addons-mxr. Morevoer, the current
implementation is totally broken, because we check for NNXOW, which only
happens when a random content JS object ends up in some other cross-origin
scope (via addons, presumably), whereas chrome objects use ChomeObjectWrapper.
I'm soon going to replace SCRIPT_ACCESS_ONLY with checked unwrapping, and mark
all COWs as unsafe to unwrap (see bug 821573 and bug 658909). So let's just kill
this thing here.
2013-01-23 06:04:38 +01:00
Boris Zbarsky
d53ec45102
Bug 823228 part 2. Move indexed property access on windows from nsWindowSH::GetProperty to the outer window proxy. r=bholley
2013-01-17 12:30:37 -05:00
Jeff Walden
da2a57bc92
Whitespace tab-killing patrol. No bug, r=sparky
2013-01-04 17:00:43 -06:00
Jeff Walden
be7908afa3
Bug 824217 - Make ChromeObjectWrapper::getPropertyDescriptor not pretend no descriptor exists when the property exists along the prototype chain, when the property is being resolved just before an assignment. r=bholley
2013-01-03 17:55:58 -06:00
Jeff Walden
d9889b3184
Bug 826447 - Change all the proxy API signatures to take unsigned flags, rather than bool set, so that it's easier to find all tests of JSRESOLVE_ASSIGNING. r=bz
...
--HG--
extra : rebase_source : 3b88b411965087984d7973a90f8fa1b06457a6ce
2013-01-03 15:31:36 -06:00
Jeff Walden
320df44ab6
Bug 823283 - Remove all remaining uses of JSRESOLVE_QUALIFIED, and the few remaining tests (which were pretty much purely diagnostic). r=luke
...
--HG--
extra : rebase_source : 51e2ac7ccc76be84d12600baeb6d458c2927bea7
2012-09-15 11:19:55 -07:00
Bobby Holley
2ca33ed4e3
Bug 809652 - Deny nativeCall for SecurityWrapper except under specific circumstances. r=jorendorff
2012-12-20 22:33:26 -08:00
Bobby Holley
60185d18f7
Bug 809652 - Have SecurityWrapper::enter default to deny, and override SecurityWrapper::objectClassIs. r=jorendorff
2012-12-20 22:33:26 -08:00
Peter Van der Beken
b208a08d09
Fix for bug 815149 (Add support for SOWs and XBL bindings in new DOM bindings). r=bz.
...
--HG--
extra : rebase_source : c24544fd3d1c99651e279e687a07a02c5b994323
2012-09-12 22:29:30 +02:00
Bobby Holley
3fcdd84451
Bug 818716 - Move XBL detection into nsContentUtils and remove filename hack. r=mrbkap
2012-12-12 17:09:37 -08:00
Saurabh Anand
c9e3659e16
Bug 818817 - Fix some compiler warnings, r=Ms2ger
2012-12-09 22:53:19 +05:30
Bobby Holley
2db9f70258
Bug 813901 - Validate __exposedProps__. r=mrbkap
...
This also involves modifying test_cows to deep clone in getCOW.
2012-12-07 14:49:11 -08:00
Bobby Holley
12044005c7
Bug 813901 - Throw COW exceptions in the wrapper's scope. r=mrbkap
2012-12-07 14:49:11 -08:00