Ms2ger
6452f0c3f0
Bug 876604 - Outparamdel UnwrapDOMObjectToISupports; r=bz
2013-06-01 08:56:02 +02:00
Bobby Holley
72af799499
Bug 858101 - Run the DefaultValue algorithm directly on the wrapper for Xrays. r=mrbkap
2013-05-31 10:36:01 -07:00
Peter Van der Beken
3402cab97c
Bug 874321 - Fix setting of expandos on Xrays for DOM bindings with named properties. r=bz.
...
--HG--
extra : rebase_source : 697545417d27696de05c0f22987e4cb187d226cd
2013-05-29 11:38:57 +02:00
Mike Shal
5169c0a913
Bug 864774 - Part 2: Move CPPSRCS to moz.build as CPP_SOURCES; r=joey CLOSED TREE
...
From 9e0ba7f425143f545eb6c4b26a9a96b5ade4d8e9 Mon Sep 17 00:00:00 2001
2013-04-23 17:54:15 -04:00
Bobby Holley
b433ae35b8
Bug 874318 - Don't allow CALL on XOWs. r=mrbkap
2013-05-22 22:27:16 -06:00
Bobby Holley
89be72dd4e
Bug 862380 - Silently fail for enumerate-like operations on XOWs. r=mrbkap
2013-05-22 22:27:15 -06:00
Bobby Holley
2fbd8f4d5c
Bug 862380 - Be more explicit about rejecting JSID_VOID for XOWs. r=mrkbap
...
We already do this, but it's helpful to be clear about it.
2013-05-22 22:27:15 -06:00
Bobby Holley
a76f725f9c
Bug 862380 - Pass the entered id in addition to the wrapper action to Policy::deny. r=mrbkap
2013-05-22 22:27:15 -06:00
Bobby Holley
0906eb3ba9
Bug 874083 - Ignore domain in PrepareForWrapping prototype remapping. r=gabor, billm
2013-05-21 07:53:35 -06:00
Bobby Holley
047d3c3c1e
Bug 872772 - Fix up lost Xray waivers when wrapping into the content compartment. r=gabor
2013-05-17 10:44:25 -07:00
Nathan Froyd
a2aebddd70
Bug 871595 - don't include WrapperFactory.h in AccessCheck.h; r=bholley
2013-05-13 12:04:23 -04:00
David Zbarsky
9c18b7ec0d
Remove some unused code due to bug 871189, r=bz over irc
2013-05-16 12:29:03 -07:00
David Zbarsky
680b9b7951
Bug 871189 - Remove Document classinfo r=bz
2013-05-16 11:06:21 -07:00
Ted Mielczarek
3cfd62c3d2
bug 871712 - make MSVC PGO opt-in per-directory, and opt-in in the directories that matter. r=glandium
2013-05-16 09:33:26 -04:00
Bobby Holley
7c5384c4e9
Bug 866823 - Handle standard prototype remapping in PrepareForWrapping. r=gabor,mrbkap
2013-05-15 21:13:12 -07:00
Bobby Holley
a7596f01a7
Bug 866823 - Don't create waivers in WaiveXrayAndWrap if the caller has no business waiving. r=gabor,mrbkap
2013-05-15 21:13:12 -07:00
Bobby Holley
cc5157a913
Bug 857356 - Remove XBL field auto-waiving. r=bz
2013-05-09 09:16:01 -07:00
Jon Coppeard
068a876f84
Bug 869526 - GC: Fix more rooting hazards in xpconnect r=bholley
2013-05-09 10:39:21 +01:00
Bobby Holley
75723ecffd
Bug 834707 - Kill dynamic SOWs. r=gabor
...
Now that XBL scopes are here to stay (no more pref), we can remove all the
machinery that makes SOWs dynamic. We still need SOWs until bug 825392 is
fixed, but they can now be totally opaque.
One side effect of this patch is that, due to our usage of Opaque, we now
allow CALL on SOWs. But this shouldn't be a problem, because SOWs are used
for anonymous elements which are not callable (and we probably wouldn't mind
it even if they were).
2013-05-06 19:38:23 -07:00
Bobby Holley
b47f593e23
Bug 834707 - Disable SOWs for remote XUL domains. r=bz
...
We have to do this if we want to proceed with eliminating SOWs entirely. Given
the other restrictions around remote XUL, I don't think this is a problem.
Note that we shouldn't need any special handling in the wrapper reparenting
paths, because those all depend on whether a SOW was there already. So that
would only be an issue if it were possible to adoptNode from a non-remote-XUL
domain into a remote-XUL domain, which thankfully can't happen.
2013-05-06 19:38:22 -07:00
Bobby Holley
9b428f8e67
Bug 868122 - Calculate the JS_SaveFrameChain optimization by directly examining the principal of the default compartment. r=mrbkap,gabor
2013-05-06 16:53:10 -07:00
Phil Ringnalda
1a57cd403b
Merge m-c to m-i
2013-05-05 12:17:07 -07:00
Ms2ger
bb6fd0a4ee
Bug 868727 - Pass an nsAString to nsGlobalWindow::GetChildWindow; r=bz
2013-05-05 09:03:19 +02:00
Ms2ger
4a6390f03d
Bug 868411 - Handlify js::GetObjectProto; r=bz
2013-05-05 09:03:14 +02:00
Boris Zbarsky
7640b170ac
Bug 865969 part 6. Fix rooting hazards in BindingUtils.cpp. r=smaug
2013-05-03 19:29:08 -04:00
Tom Schuster
79e64357e4
Bug 865410 - Use CallArgs for XPConnect Call and Construct hooks. r=bholley.
2013-05-04 19:25:15 +02:00
Jon Coppeard
c1714595b9
Bug 866762 - GC: A few more XPConnect rooting hazards r=bholley
2013-04-30 15:27:48 +01:00
Jon Coppeard
7304b3bc6e
Bug 865308: GC: More rooting work in XPConnect r=bholley
2013-04-26 18:50:18 +01:00
Boris Zbarsky
1ffcf1ad91
Bug 861493. When passing arguments to an Xray for a WebIDL constructor, make sure to do the argument unwrapping before entering the content compartment. r=bholley,waldo
...
There are several changes here:
1) Adds some MutableThis methods to Optional, Nullable, and dictionaries to
effectively allow doing a const_cast without knowing the actual type being
templated over. I needed this because I do not in fact know that type in
the relevant code. I'm open to suggestions for a better name for this
method.
2) Adds some operator& to RootedJSValue to make it look more like a JS::Value,
and in particular so I can JS_WrapValue the thing in it.
3) Adds a Slot() method to NonNullLazyRootedObject, just like NonNull has.
4) Adds an operator& to LazyRootedObject to make it look more like JSObject* so
I can JS_WrapObject the thing in it.
5) Implements the actual rewrapping of the arguments into the content compartment.
6) Fixes a small preexisting bug in which we didn't look at named constructors
in getTypesFromDescriptor (this was causing my tests to not compile).
7) Changes Xrays to not enter the content compartment when calling a WebIDL
constructor.
8) Adds some friend API to report things as not being functions.
2013-04-25 19:03:05 -04:00
Andrew McCreight
85d756a3c6
Bug 865397 - Nicen up "id got defined" assertion. r=bholley
2013-04-25 08:42:44 -07:00
Jon Coppeard
c1c42130cf
Bug 861887 Review comments for prev patch r=bholley
...
--HG--
extra : rebase_source : 7f91680f5f7249c9fb09708eb790bdc19c779c67
2013-04-24 14:22:21 +01:00
Jon Coppeard
a797c9f224
Bug 861887 - GC: Rooting in XrayWrapper.cpp - part 2 r=bholley
2013-04-24 10:45:41 +01:00
Bobby Holley
02a2496bc2
Bug 860494 - Move the named property check further down in XrayWrapper. r=bz
2013-04-23 12:50:17 -04:00
Bobby Holley
416b2c4c8c
Bug 860494 - Check for native properties before checking named children on XOWs. r=bz
2013-04-23 12:50:17 -04:00
Bobby Holley
820adfebdf
Bug 860494 - Clarify the semantics of XrayTraits::resolveOwnProperty. r=bz
...
Right now, it sometimes fills out |desc|, and sometimes just defines the property
on the holder. This can get confusing, so let's refine the semantics here and
describe them in a big comment.
2013-04-23 12:50:17 -04:00
Bobby Holley
d4a09bba16
Bug 860494 - Make resolveNativeProperty a virtual instance method in XrayTraits like resolveOwnProperty. r=bz
...
The current setup is just an artifact of how it used to be before I refactored
Xrays. Have it as a virtual trap is more flexible since it allows us to invoke
the right trap by just calling GetXrayTraits(wrapper) from non-templatized code.
2013-04-23 12:50:16 -04:00
Jon Coppeard
721057a505
Bug 864046 - GC: Almost the last rooting fixes in XPConnect - part 1 r=bholley
2013-04-20 10:41:47 +01:00
Jon Coppeard
7b2f5e54d8
Bug 863767 - GC: Rooting for XPCCallContext r=bholley
2013-04-20 09:52:56 +01:00
Jon Coppeard
6b41db971f
Bug 863289 - GC: Continue the rooting of XPConnect r=bholley
2013-04-17 16:38:44 +01:00
Ryan VanderMeulen
040af911d4
Backed out changesets b9f7fd0996f0 and c0ab16b6003e (bug 860494) for mochitest failures on a CLOSED TREE.
2013-04-17 12:00:20 -04:00
Bobby Holley
b460b44c87
Bug 860494 - Move the named property check further down in XrayWrapper. r=bz
2013-04-17 10:52:52 -04:00
Mike Shal
df7deac25b
Bug 846634 - Part 2: Move EXPORTS to moz.build; r=joey
2013-04-16 15:24:43 -04:00
Jon Coppeard
7f7df293ae
Bug 861281 - GC: Root the wrap object API r=terrence r=bholley
...
--HG--
extra : rebase_source : 1d3ed88299ad8e9ad6812fb41aa48f03cc7aabae
2013-04-15 18:32:55 +01:00
Jeff Walden
763718651b
Bug 858677 - Fix up code not built by SpiderMonkey to use the newly-changed deletion signatures. r=bholley, r=billm
2013-04-05 21:22:55 -07:00
Jon Coppeard
32bc2e5c59
Bug 861269 - GC: Continuing the rooting of XPConnect - Convert id_ to idArg style arguments r=bholley
...
--HG--
extra : rebase_source : a0a88749928f3f622b5626adfc8aa23382d06611
2013-04-15 15:29:37 +01:00
Ryan VanderMeulen
454cb5b6ad
No bug - Fix typo.
2013-04-12 23:04:51 -04:00
Jon Coppeard
8d0b0385b6
Bug 860777 - Part 2 - Root WrapperFactory.cpp r=bholley
...
--HG--
extra : rebase_source : 83a21d88d01e52ea34326388dab462efdc4252ab
2013-04-12 10:50:43 +01:00
Jon Coppeard
650580da78
Bug 860311 - GC: More rooting in XPConnect r=bholley
...
--HG--
extra : rebase_source : 3afba11173f0df957fe34e66b9dd443b5ed01b9a
2013-04-09 16:42:21 +01:00
Jacek Szpot
a38774d086
Bug 854503 - Rename JS unwrapping functions. r=bholley
2013-04-11 11:50:18 -07:00
Bobby Holley
7235a8baf4
Bug 856840 - Kill FindWrapper. r=mrbkap
2013-04-08 12:51:24 -07:00
Gabor Krizsanits
07c194820d
Bug 832091 - guards against crashes in resolveDOMCollectionProperty. r=bholley
2013-04-07 10:18:58 +02:00
Ryan VanderMeulen
4df26dd5ac
Backed out changeset a85d21e394c0 (bug 854503) for bustage.
2013-04-06 14:37:33 -04:00
Jacek Szpot
ab74228011
Bug 854503 - Rename JS unwrapping functions. r=bholley
2013-04-04 12:14:32 +02:00
Ms2ger
97ae827742
Merge m-c to m-i.
2013-04-04 14:15:56 +02:00
Ms2ger
5d894db6f7
Bug 852602 - Pass CallArgs to Proxy call() and construct() hooks; r=Waldo
2013-04-04 09:02:24 +02:00
Bobby Holley
61705225bc
Bug 843829 - Wrap unwaived content JS objects in opaque wrappers for XBL scopes. r=mrbkap
2013-04-03 11:41:23 -07:00
Bobby Holley
c15547b548
Bug 843829 - Explicitly add a waiver in FieldGetter and FieldSetter. r=mrbkap
2013-04-03 11:41:23 -07:00
Bobby Holley
8788bdc0ee
Bug 843829 - Stop using IsTransparent for XBL field access, and explicitly waive instead. r=mrbkap
2013-04-03 11:41:23 -07:00
Bobby Holley
a332f0164a
Bug 843829 - Apply transitive waivers for nativeCall. r=mrbkap
2013-04-03 11:41:23 -07:00
Bobby Holley
38f05e866f
Bug 845862 - Transitively apply waivers for accessor descriptors. r=mrbkap
2013-04-03 11:41:22 -07:00
Ehsan Akhgari
eadd54865e
Backed out 6 changesets (bug 843829, bug 845862) because of broken mochitest-5
...
Backed out changeset 1df3bdadb7ce (bug 843829)
Backed out changeset 64f001fe04fb (bug 843829)
Backed out changeset 57652d8f0827 (bug 843829)
Backed out changeset 2e889cd77a48 (bug 843829)
Backed out changeset 97d16e7beb27 (bug 843829)
Backed out changeset 6c6ab0e54917 (bug 845862)
Landed on a CLOSED TREE
2013-04-02 23:05:48 -04:00
Bobby Holley
bc8fa5b7e3
Bug 843829 - Wrap unwaived content JS objects in opaque wrappers for XBL scopes. r=mrbkap
2013-04-02 18:51:20 -07:00
Bobby Holley
170286774d
Bug 843829 - Explicitly add a waiver in FieldGetter and FieldSetter. r=mrbkap
2013-04-02 18:51:20 -07:00
Bobby Holley
6a9d39f758
Bug 843829 - Stop using IsTransparent for XBL field access, and explicitly waive instead. r=mrbkap
2013-04-02 18:51:20 -07:00
Bobby Holley
70b8e9c476
Bug 843829 - Apply transitive waivers for nativeCall. r=mrbkap
2013-04-02 18:51:20 -07:00
Bobby Holley
c6e721524b
Bug 845862 - Transitively apply waivers for accessor descriptors. r=mrbkap
2013-04-02 18:51:19 -07:00
Jon Coppeard
03a9c98899
Bug 854955 - GC: Rooting in XrayWrapper.cpp r=bholley
...
--HG--
extra : rebase_source : fdee7c16f54e1fcbf4ae96e89ffd20eb14ec2d8d
2013-03-27 11:33:30 +00:00
Bobby Holley
7ca7a4cb72
Bug 854480 - Remove SCRIPT_ACCESS_ONLY. r=mrbkap
2013-04-01 15:17:51 -07:00
Gabor Krizsanits
31f45643be
Bug 820170 - GetNativeForGlobal. r=bholley
2013-04-04 11:27:42 +02:00
Kyle Machulis
72a717a860
Bug 855465 - Add emacs python mode comments to moz.build files; r=gps
2013-04-01 11:36:59 -07:00
Eddy Bruel
ac26949ffe
Bug 789897 - Implement isExtensible and preventExtensions traps for proxies, including scriptable direct proxies, and in the various wrapper classes. Also move non-static JSObject::preventExtensions to static ObjectImpl::preventExtensions, for handle correctness. Patch is a semi-tag-team effort with jwalden. r=jwalden, r=ejpbruel, r=bholley, r=two-turtle-doves-and-a-partridge-in-a-pear-tree
...
--HG--
extra : rebase_source : 156d2c22499372fceb60d130e363a3685e68b9fc
2013-03-22 19:43:03 -07:00
Kyle Machulis
43628a7867
Backout for changeset 03452b187c14 (Bug 855465) due to bustage on a CLOSED TREE; r=qdot
2013-03-29 15:12:58 -07:00
Kyle Machulis
334c0800cf
Bug 855465 - Add emacs python mode comments to moz.build files; r=gps
...
--HG--
extra : rebase_source : 004a756492323e1a049586e85b3be5037159df20
2013-03-29 13:56:18 -07:00
Ryan VanderMeulen
114ddf1599
Backed out bug 789897 due to regressions.
2013-03-29 14:07:32 -04:00
Bobby Holley
cf8475a71a
Bug 855922 - Check XBL scopes per-compartment in the SOW isSafeToUnwrap hook. r=bz
2013-03-28 18:38:07 -07:00
Eddy Bruel
4f59f6b452
Bug 789897 - Implement a preventExtensions trap for proxies. Patch is a semi-tag-team effort with jwalden. r=jwalden, r=ejpbruel, r=bholley, r=two-turtle-doves-and-a-partridge-in-a-pear-tree
...
--HG--
extra : rebase_source : 03b1b90c727ecc6a5d9d8cd769423f0a8f6efde4
2013-03-22 19:43:12 -07:00
Eddy Bruel
6c07f423e8
Bug 789897 - Implement an isExtensible trap for proxies. Patch is a semi-tag-team effort with jwalden. r=jwalden, r=ejpbruel, r=bholley, r=two-turtle-doves-and-a-partridge-in-a-pear-tree
...
--HG--
extra : rebase_source : 346645d8dc32ddb76f18e7557e99f41cb66abe9e
2013-03-22 19:43:03 -07:00
Bobby Holley
0cdff77326
Bug 854558 - Enforce __exposedProps__ for Sandboxes. r=gabor
2013-03-26 09:08:29 -07:00
David Zbarsky
46284ae633
Bug 847007: Remove nsIContent includes r=Ms2ger
2013-03-21 20:05:20 -04:00
Tom Schuster
a1663a0e87
Bug 828462 - Root Proxy/Wrapper in the browser. r=terrence,bz
2013-03-21 23:23:48 +01:00
Tom Schuster
787f786f96
Bug 828462 - Root Proxy/Wrapper delete. r=terrence
2013-03-21 23:23:48 +01:00
Tom Schuster
b6725433ce
Bug 828462 - Root Proxy/Wrapper getOwnPropertyNames and keys. r=terrence
2013-03-21 23:23:47 +01:00
Tom Schuster
aaa3687e9b
Bug 828462 - Root Proxy/Wrapper defineProperty. r=terrence
2013-03-21 23:23:47 +01:00
Tom Schuster
950e87f7e8
Bug 828462 - Root Proxy/Wrapper get(Own)PropertyDescriptor. r=terrence
2013-03-21 23:23:47 +01:00
Bobby Holley
5d587a2a1e
Bug 658909 - Remove GWNOJO from AccessCheck. r=mrbkap
2013-03-21 08:20:45 -07:00
Bobby Holley
155c7bef82
Bug 658909 - Remove GWNOJO from JSObject2NativeInterface. r=mrbkap
2013-03-21 08:20:44 -07:00
Bobby Holley
b945d5623d
Bug 658909 - Implement carefully-checked unwrapping in XPCCallContext. r=mrbkap
2013-03-21 08:20:42 -07:00
Bobby Holley
dace71a951
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.
2013-03-21 08:20:41 -07:00
Ryan VanderMeulen
318dfacf98
Backed out 22 changesets (bug 658909) for Windows debug bustage.
2013-03-21 15:24:54 -04:00
Bobby Holley
f89657fd7e
Bug 658909 - Remove GWNOJO from AccessCheck. r=mrbkap
2013-03-21 08:20:45 -07:00
Bobby Holley
9d8bb86c94
Bug 658909 - Remove GWNOJO from JSObject2NativeInterface. r=mrbkap
2013-03-21 08:20:44 -07:00
Bobby Holley
9a8ea3591c
Bug 658909 - Implement carefully-checked unwrapping in XPCCallContext. r=mrbkap
2013-03-21 08:20:42 -07:00
Bobby Holley
13040f7556
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.
2013-03-21 08:20:41 -07:00
Jon Coppeard
f18e9439d5
Bug 853028 - GC: Fix some rooting issues found by static analysis r=terrence
...
--HG--
extra : rebase_source : a1d340a00516ae890c98fa7420497e85526823fc
2013-03-21 12:56:58 +00:00
Mike Shal
7ecea60097
Bug 844654 - Part 2: Move MODULE to moz.build; rs=gps
2013-03-19 11:47:00 -07:00
Mohit Gahlot
8cc749406f
Bug 851377 - Now ResolvingId::isResolving is not called with a null object. r=bholley
2013-03-18 21:28:05 +05:30
Bobby Holley
fa807df3d0
Bug 851987 - QI to nsPIDOMWindow instead of nsIDOMWindow in XPCWrappedJS. r=bz
2013-03-18 14:30:23 -07:00
Ms2ger
4f5fca99bc
Bug 845374 - Part l: Stop including nsIDocument.h in nsContentUtils.h and fix two nits; r=khuey
2013-03-17 08:55:15 +01:00
Bobby Holley
4b95a9deb0
Bug 850517 - Support named window access via Xray. r=mrbkap
2013-03-14 22:38:26 -07:00
Bobby Holley
510b8a85e9
Bug 849730 - Let objectClassIs through for COWs. r=mrbkap
2013-03-13 14:48:59 -07:00
Bill McCloskey
484d62d1fb
Bug 846890 - Avoid check for native anonymous content when possible (r=bholley)
2013-03-08 18:49:36 -08:00
Bill McCloskey
7401ed1cc2
Back out bug 846890 for reftest orange
2013-03-08 21:27:25 -08:00
Bill McCloskey
0ca2a01b5b
Bug 846890 - Avoid check for native anonymous content when possible (r=bholley)
2013-03-08 18:49:36 -08:00
Jon Coppeard
a0a3f88913
Bug 848395 - GC: Move Rooted to JS namespace - rename js::Rooted to JS::Rooted outside SpiderMonkey r=terrence
...
--HG--
extra : rebase_source : 35cbf3cc4da4598c2e9e6975028ef397718849db
2013-03-06 16:41:43 +00:00
Ed Morley
3a53c22824
Backed out changeset 28ef4bdff455 (bug 848395)
2013-03-07 13:03:35 +00:00
Jon Coppeard
6a98a4532a
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
0c8ee65118
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
45faa95b04
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
c832d55dac
Bug 784841 - Part 18s: Convert /js; r=glandium
2013-02-25 12:47:22 -08:00
Bobby Holley
0c9994db1d
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
59d3c6c36d
Bug 836301 - Hoist enter() calls from {Xray,}Wrapper::foo into Proxy::foo. r=mrbkap
2013-02-25 13:54:18 -08:00
Bobby Holley
d916a1015e
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
e969932415
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
141e362856
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
75c19cf6e0
Bug 834732 - Assert proper cx stack handling in WrapperFactory::Rewrap. r=mrbkap
2013-02-26 11:04:13 -08:00
Bobby Holley
a56a907e29
Bug 834697 - Enable XBL scopes, and disable assertion. r=bz,me
2013-02-14 15:15:59 +01:00
Ryan VanderMeulen
141f9389ce
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
17eaab9c51
Bug 834732 - Assert proper cx stack handling in WrapperFactory::Rewrap. r=mrbkap
2013-02-13 00:22:27 +01:00
Phil Ringnalda
7529e0b16b
Back out 4d301b2bcad0:e0632e639097 (bug 836301) for Windows build bustage
...
CLOSED TREE
2013-02-22 08:41:37 -08:00
Bobby Holley
510ba5b448
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
bdcb37109c
Bug 836301 - Hoist enter() calls from {Xray,}Wrapper::foo into Proxy::foo. r=mrbkap
2013-02-22 08:14:34 -08:00
Bobby Holley
2c74bb15cf
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
3e3a4e08c3
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
79dd453af9
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
047d41c0d3
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
af54a3636a
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
1b758ec295
Bug 821850 - Expose XBL members via Xray wrappers. r=bz
2013-02-08 14:24:21 +00:00
Bobby Holley
97bf6ad095
Bug 821850 - Clean up security wrappers for NAC. r=bz
2013-02-08 14:24:20 +00:00
Bobby Holley
54511231e6
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
be3d55b211
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
88de345330
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
9474e07ea6
Backout f3c145bd1dd2 & 5075690572a9 for OS X startup failures
2013-01-28 11:08:21 +00:00
Peter Van der Beken
95d9de83f0
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
59d0d80d82
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
38606e7675
Bug 823348 - Replace security wrapper enumeration with a more rule-based approach. r=mrbkap
2013-01-23 06:04:39 +01:00
Bobby Holley
81028b7e44
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
e73d3f774c
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
d138e10671
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
93ef6e574e
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
879caaf0ed
Bug 823348 - Use EnsureCompartmentPrivate In Rewrap and stop checking for null. r=mrbkap
2013-01-23 06:04:39 +01:00
Bobby Holley
26a118b43a
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
402fba14fe
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
2eb6adc447
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
06072bf404
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
192b78fa9c
Whitespace tab-killing patrol. No bug, r=sparky
2013-01-04 17:00:43 -06:00
Jeff Walden
4a62a2dda6
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
a127013839
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
c4fadd1981
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
f681aaffe9
Bug 809652 - Deny nativeCall for SecurityWrapper except under specific circumstances. r=jorendorff
2012-12-20 22:33:26 -08:00
Bobby Holley
ee5cb1d935
Bug 809652 - Have SecurityWrapper::enter default to deny, and override SecurityWrapper::objectClassIs. r=jorendorff
2012-12-20 22:33:26 -08:00