Bill McCloskey
87e444edff
Bug 747066 - Inline xpc_UnmarkGray (r=terrence)
...
--HG--
extra : rebase_source : 9a5fe3cdcac2e3352407031c969ed705b0458dab
2012-11-19 10:59:01 -08:00
Peter Van der Beken
f19a710259
Fix for bug 814195 (Replace Element quickstubs with new binding methods). r=bz.
...
--HG--
extra : rebase_source : 360b2ee1bc678265781991149185a1c1d262642e
2012-11-22 12:09:43 +01:00
Ehsan Akhgari
a7a98ebf22
Merge mozilla-central into mozilla-inbound
2012-11-28 09:43:30 -05:00
Olli Pettay
79b3761656
Bug 811206, Fix JSHolder drop handling, part 2 (assert), r=mccr8
...
--HG--
extra : rebase_source : e7731c7d1f81e250ea6992e4a15c3dc52bb136d0
2012-11-28 02:56:06 +02:00
Olli Pettay
9ade992793
Bug 811206, Fix JSHolder drop handling, part 1 (base), r=mccr8
...
--HG--
extra : rebase_source : 0ea98d9e542ebade36653661fe4e941a03b87781
2012-11-28 01:54:15 +02:00
Peter Van der Beken
85985b93de
Fix for bug 814821 (Dromaeo dom-traverse regression from bug 812333) - part 4: inline xpc_qsUnwrapObj. r=bz.
...
--HG--
extra : rebase_source : 712ff5573098f9d29fce555fb8cd548c5900d60e
2012-11-27 10:20:05 +01:00
Peter Van der Beken
26802bf1cf
Fix for bug 814821 (Dromaeo dom-traverse regression from bug 812333) - part 3: reorder castNativeFromWrapper. r=bz.
...
--HG--
extra : rebase_source : 6f5e0593219f5f664791c1cd0c976f43fb96609e
2012-11-27 10:20:05 +01:00
Geoff Brown
cdc96a13ff
Bug 815699 - Check for null mGREDir in xpcshell dir provider; r=jimm
2012-11-27 11:44:24 -07:00
Jon Coppeard
36ffac8ea8
Bug 790338 - Split up xpconnect finalization callback r=billm
...
--HG--
extra : rebase_source : 2b70376622af8104d829c23b0014cbd7d8d73a87
2012-10-12 10:45:30 +01:00
Kyle Huey
531578ec07
Bug 814102: Make the 'this' object used when compartment sharing a FakeBackstagePass. r=mrbkap
2012-11-26 14:41:59 -08:00
Kyle Huey
9048d562b8
Bug 811784: Account for subscripts when figuring out what object to stick properties on. r=mrbkap
2012-11-26 14:41:55 -08:00
Peter Van der Beken
b045a6d2b2
Fix for bug 812333 (Replace Node quickstubs with new binding methods) - part 2: install Node's binding methods on the XPConnect proto. r=bz.
2012-11-22 12:09:41 +01:00
Peter Van der Beken
3fb06020ff
Fix for bug 814022 (Make instanceof for new DOM bindings work across scopes). r=bz.
2012-11-19 11:59:13 +01:00
Bobby Holley
6d0cce4a71
Bug 812415 - Use wrapperSubsumes rather than isChrome in XPCNativeWrapper.unwrap. r=mrbkap
...
The current behavior breaks same-origin Xrays in sandboxes. This makes it match
the check we do in XrayWrapper.cpp for the .wrappedJSObject property.
2012-11-21 17:55:58 -08:00
Bobby Holley
e01eac97a5
Bug 813394 - Test both |window.location| and |location| in navigated-away-from frame. r=bz
2012-11-21 13:20:05 -08:00
Bobby Holley
d889379068
Bug 808608 - Fix test_bug802557. r=bz
...
There are a number of fixes to this important tests, so this warrants a separate
patch.
First of all, the boundTo machinery goes away, because we no longer have same-
compartment Xrays giving us the weird bound methods.
Furthermore, now that the sensitive methods are just regular old methods
off the prototype. They'll fail correctly when used on a same-scope object,
but not for cross-scope XOWs they'll just fail in the
GetWrappedNativeOfJSObject rat's nest (when they can't unwrap the security
wrapper), so we'll just get a generic XPConnect error instead of a security
exception. I want to fix this soon, so I changed the skipMessageCheck stuff
to use todo_is.
However, _that_ caused an UNEXPECTED-PASS for the DefaultValue test (which
was the only one of the array of tests that was throwing a security exception
in step 2). So I added an annotation for that in item[2].
2012-11-21 13:20:05 -08:00
Bobby Holley
4fb0eb55a2
Bug 808608 - Remove Xray shadowing protection infrastructure. r=mrbkap
...
This is now unused.
2012-11-21 13:20:05 -08:00
Bobby Holley
645bf15f18
Bug 808608 - Fix up tests to work with new behavior. r=bz,me
2012-11-21 13:20:05 -08:00
Bobby Holley
deb1246831
Bug 808608 - Remove special testing for Location in test_bug505915. r=me
...
Removing test coverage isn't great. But the only reason this test is doing all
this funny stuff with Location is that it thinks that it's always wrapped in
an Xray wrapper and that we always do a dynamic security check, which is no
longer true. Moreover, it checks for very specific error messages, which are
kind of in flux right now as I'm fixing up GWNOJO. The calls are never going
to actually succeed (since location isn't a Node), so it's not really clear
how to fix up this test to do something uniquely useful in a readable way.
I've added enough Location test coverage recently that I'm comfortable removing
this part.
2012-11-21 13:20:05 -08:00
Bobby Holley
9081886d4a
Bug 808608 - Remove specialized Location security wrappers. r=mrbkap
2012-11-21 13:20:05 -08:00
Bobby Holley
de65cd77ed
Bug 808608 - Remove unnecessary outparam. r=mrbkap
2012-11-21 13:20:05 -08:00
Bobby Holley
aa8b4abfd6
Bug 808608 - Implement shadowing protection in nsDOMClassInfo. r=mrbkap
...
This allows us to remove the same-compartment Location wrappers. This can
go away when we move Location to the new bindings and get access to
[Unforgeable].
2012-11-21 13:20:05 -08:00
Bobby Holley
52508e361a
Bug 808608 - Rescue expando sharing tests. r=mrbkap
...
We have a very nice and robust infrastructure for per-origin expando sharing
for Xrays. Unfortunately, the only way to currently exercise it is with
Location objects, since those are the only objects with same-origin Xrays
(cross-origin Xrays don't allow expandos at all). Sandbox wantXrays would
almost work here, but we actually make an explicit exception for sandboxes
so that they never share expandos (the 'exlusive global' stuff).
I think the infrastructure is nice and that we may want it in the future, so
I don't really want to back it out. But I also don't want to leave it in the
tree untested. So I'm adding an explicit Cu API to force DOM compartments to
use same-origin Xrays. This allows us to keep testing this stuff, which I think
is important.
2012-11-21 13:20:04 -08:00
Daniel Holbert
41aacf08c9
Bug 811057: Make DeferredFinalizeFunction take a uint32 instead of an int32 as its "slice" parameter. r=peterv
2012-11-21 10:20:32 -08:00
Ryan VanderMeulen
66bbddb09f
Merge m-c to inbound.
2012-11-20 20:28:29 -05:00
Olli Pettay
3879ea62f2
Bug 794158, Remove over-complicated AutoWrapperChanger, r=peterv
2012-11-20 23:01:28 +02:00
Bill McCloskey
3868c9ddea
Backout 2ee20348ae59 (bug 747066) for Win64 crashes
2012-11-20 10:45:43 -08:00
Benjamin Peterson
f96fb190ef
Bug 795104 - Sources with a custom charset can't be lazily loaded. r=bz
2012-11-20 11:30:03 -06:00
Boris Zbarsky
46a77679c5
Bug 813423. A bit more inlining for stuff that should really be inline. r=peterv
2012-11-20 11:36:06 -05:00
Boris Zbarsky
47c856187a
Bug 813419. Add a non-null-checking version of xpc_UnmarkGrayObject. r=mccr8
2012-11-20 11:36:06 -05:00
Ehsan Akhgari
69c983597a
Backed out 6 changesets (bug 814821, bug 815158, bug 814195) for test failures
...
Backed out changeset 0c2011091748 (bug 815158)
Backed out changeset 9d70b4460508 (bug 814195)
Backed out changeset bf8746658a72 (bug 814821)
Backed out changeset e73366b088d7 (bug 814821)
Backed out changeset 49fc6d535c41 (bug 814821)
Backed out changeset 987aea26a43a (bug 814821)
2012-11-27 16:30:39 -05:00
Peter Van der Beken
d376ba5130
Fix for bug 814195 (Replace Element quickstubs with new binding methods). r=bz.
...
--HG--
extra : rebase_source : 349ceea8412f4133e1b9de4e2859d7663da27fa5
2012-11-22 12:09:43 +01:00
Peter Van der Beken
a1c40fa0ac
Fix for bug 814821 (Dromaeo dom-traverse regression from bug 812333) - part 4: inline xpc_qsUnwrapObj. r=bz.
...
--HG--
extra : rebase_source : 8506cc86db7ebfe8832ed5696aeb45c79364af1f
2012-11-27 10:20:05 +01:00
Peter Van der Beken
77aa58865d
Fix for bug 814821 (Dromaeo dom-traverse regression from bug 812333) - part 3: reorder castNativeFromWrapper. r=bz.
...
--HG--
extra : rebase_source : ad4c96a240140f56b1b451df3b57a4d5c47ee3ee
2012-11-27 10:20:05 +01:00
Nicolas B. Pierron
a0f4f2a053
Bug 810062 - Toggle JSOPTIONs before the compartment creation. r=bhackett
2012-11-19 18:07:20 -08:00
Bill McCloskey
f2265f897b
Bug 747066 - Inline xpc_UnmarkGray (r=terrence)
2012-11-19 10:59:01 -08:00
Nicholas Nethercote
fa52b57f84
Bug 789398 - Rework the type inference memory reporters. r=bhackett.
...
--HG--
extra : rebase_source : 945c35907d0d4a62b904664da7b5f2b35a182034
2012-11-18 14:40:01 -08:00
Jim Mathies
1892c79026
Bug 810810 - Add support for 'APluginsDL' to the xpcshell directory service provider and return the GRE folder when queried. r=bsmedberg, glandium
2012-11-17 14:35:16 -06:00
Jonathan Griffin
67543c33b9
Backed out a94288026ea5 (Bug 811784) for turning all b2g emulator tests red
2012-11-16 18:30:22 -08:00
Kyle Huey
040cbf0f95
Bug 811784: Account for subscripts when figuring out what object to stick properties on. r=mrbkap
...
--HG--
extra : rebase_source : 6da8a33c512b2e5758094f4a2108e5c342c7c28c
2012-11-16 08:54:58 -08:00
Ed Morley
353ea03fab
Backout 4bc502c08da4 (bug 811784) for xpcshell failures
2012-11-16 18:16:33 +00:00
Kyle Huey
9bcf4c9be1
Bug 811784: Account for subscripts when figuring out what object to stick properties on. r=mrbkap
2012-11-16 08:54:58 -08:00
Kannan Vijayan
ef9c9830cc
Bug 803730 - Mochitest for bug.
2012-11-15 22:57:18 -05:00
Bobby Holley
29ae85a79e
Bug 809674 - Fail at call time when invoking an XPCWrappedJS method with [implicit_jscontext] or [optional_argc]. r=mrbkap
...
I think this is the path of least resistance here.
2012-11-15 10:16:36 -08:00
Peter Van der Beken
fa62dbbc16
Fix for bug 811895 (Fix WN Xray special methods so they can take new DOM binding objects). r=bz.
...
--HG--
extra : rebase_source : 4b4ade0c3cddee9241e94f2e20216cee73a8e284
2012-09-26 16:17:51 +02:00
Benoit Jacob
58175ef06b
Bug 807437 - Eliminate redundant Traverse/Unlink CC macros - part 2: handmade fixups - r=mccr8
2012-11-15 02:32:40 -05:00
Benoit Jacob
f4c1a03e74
Bug 806279 - CC macros refactoring: part 3: fold the TRAVERSE_NATIVE and AMBIGUOUS cases - r=mccr8,smaug
2012-11-15 02:32:39 -05:00
Boris Zbarsky
fa61227956
Bug 811449 part 8. Get rid of nsGenericElement. r=peterv
2012-11-14 14:10:08 -08:00
Peter Van der Beken
218b158687
Fix for bug 807075 (New DOM binding APIs for HTMLElement). r=bz.
...
--HG--
extra : rebase_source : 842b9397d2b050f880c44d3366bcc838e6615fd5
2012-11-11 00:30:15 +01:00
Ben Turner
3a4dc012ab
Bug 809661 - Need a speedy way to construct a thread list for SMS messages. r=sicking
2012-11-14 11:49:56 -08:00
Bobby Holley
56d2c9b612
Bug 569506 - Tearoff tests. r=mrbkap
2012-11-14 10:15:13 -08:00
Bobby Holley
a75f5ca4d9
Bug 800915 - Remove the cx parameter and simplify various APIs. r=sfink,bz
...
If callers want to throw, it's now their responsibility.
2012-11-14 09:56:26 -08:00
Bobby Holley
5fe101ddca
Bug 800915 - Reimplement PUNCTURE consumers in terms of isSafeToUnwrap() and remove PUNCTURE API. r=mrbkap
2012-11-14 09:56:25 -08:00
Bobby Holley
583cb7273a
Bug 800915 - Add infrastructure to flag security wrappers as unsafe to unwrap. r=mrbkap
2012-11-14 09:56:25 -08:00
Bobby Holley
1bc19ac093
Bug 800915 - Clarify and refine the semantics of SecurityWrapper so that it is used if and only if unwrapping is unsafe. r=mrbkap
...
The naming scheme for Xray typedefs is the concatenation of the tuple:
({SC,}, {Security,Permissive}, Xray, {XPCWN,DOM}). This is admittedly a bit
much, but I think it's still better than explicitly doing the "typdef Foo Xray"
everywhere. Moreover, once the new DOM bindings are done, the last component
in the tuple will go away.
2012-11-14 09:56:25 -08:00
Ed Morley
c7eb022388
Backout 54c4f2ff78e3 (bug 807075) for Windows compilation errors
2012-11-14 16:45:28 +00:00
Peter Van der Beken
ee9050291e
Fix for bug 807075 (New DOM binding APIs for HTMLElement). r=bz.
...
--HG--
extra : rebase_source : 9afce481cd0a5c8a1014c8c9b0aad7d6665aaa82
2012-11-11 00:30:15 +01:00
Gregor Wagner
1c428080a1
Backout f2c60518351d Bug 809661
2012-11-13 14:44:18 -08:00
Ben Turner
827cb19e8c
Bug 809661 - Need a speedy way to construct a thread list for SMS messages. r=sicking
2012-11-13 13:01:26 -08:00
Kyle Huey
9efde1e3a0
Bug 810987: When sharing a global, don't import properties onto the global, import them onto the appropriate 'this' object. r=mrbkap
...
--HG--
extra : rebase_source : c3a92d4197831fa3061bf3f01b7cc610cc89e867
2012-11-13 11:13:27 -08:00
Kyle Huey
1eb5f304df
Backout Bug 810987.
2012-11-13 10:27:37 -08:00
Kyle Huey
b490fd3695
Backed out changeset 62886fd1aaa4
2012-11-13 10:25:24 -08:00
Kyle Huey
d4d9b2dcd8
Bug 810987: Followup bustage fix.
2012-11-13 10:24:08 -08:00
Kyle Huey
1854d5c345
Bug 810987: When sharing a global, don't import properties onto the global, import them onto the appropriate 'this' object. r=mrbkap
2012-11-13 08:57:44 -08:00
Ed Morley
1e33323cc9
Backout bcb591d32bd6 (bug 809674) on suspicion of breaking B2G marionette-webapi
2012-11-13 13:48:21 +00:00
Ryan VanderMeulen
6dd149a122
Backed out de9fff3a523, c567df2244f5, 8e3d976d5dc5, and c7499faaec23 (bug 800915) for bustage.
...
--HG--
extra : rebase_source : c823063bfa31d59d32b3402bd4b458b84b703cd5
2012-11-12 21:43:39 -05:00
Bobby Holley
a575c96c5e
Bug 800915 - Remove the cx parameter and simplify various APIs. r=sfink,bz
...
If callers want to throw, it's now their responsibility.
2012-11-12 17:35:32 -08:00
Bobby Holley
943664eddf
Bug 800915 - Reimplement PUNCTURE consumers in terms of isSafeToUnwrap() and remove PUNCTURE API. r=mrbkap
2012-11-12 17:35:32 -08:00
Bobby Holley
7627d68c2a
Bug 800915 - Add infrastructure to flag security wrappers as unsafe to unwrap. r=mrbkap
2012-11-12 17:35:32 -08:00
Bobby Holley
6c6f3210d3
Bug 800915 - Clarify and refine the semantics of SecurityWrapper so that it is used if and only if unwrapping is unsafe. r=mrbkap
...
The naming scheme for Xray typedefs is the concatenation of the tuple:
({SC,}, {Security,Permissive}, Xray, {XPCWN,DOM}). This is admittedly a bit
much, but I think it's still better than explicitly doing the "typdef Foo Xray"
everywhere. Moreover, once the new DOM bindings are done, the last component
in the tuple will go away.
2012-11-12 17:35:31 -08:00
Bobby Holley
4a55654f1d
Bug 809674 - Fail at call time when invoking an XPCWrappedJS method with [implicit_jscontext] or [optional_argc]. r=mrbkap
...
I think this is the path of least resistance here.
2012-11-12 16:17:24 -08:00
Bobby Holley
d28553ba1e
Bug 810743 - First check for pending exceptions, _then_ examine the invoke result. r=mrbkap
2012-11-12 16:17:24 -08:00
Bill McCloskey
1ca35e1751
Bug 810560 - Followup (r=luke)
2012-11-12 15:17:01 -08:00
Bill McCloskey
28df0f4893
Bug 810560 - Fix scheduledForDestruction assertion (r=luke)
...
--HG--
extra : rebase_source : 6c25ad6b505e818d66f1caaea907c55355f7559a
2012-11-12 14:57:53 -08:00
Peter Van der Beken
451ff8f738
Fix for bug 804950 (New DOM binding APIs for Element). r=bz.
...
--HG--
extra : rebase_source : a8691ead07dfa8ecca812396047627dc15474d83
2012-10-16 13:51:00 +02:00
Terrence Cole
d3648d3506
Bug 805080 - Move more API users to CompileOptions; r=luke
...
There is no reason to have special methods for specific sets of CompileOptions
when the JS::Compile interface is so easy to use. Other API methods can be
moved internal or removed entirely with this change.
--HG--
extra : rebase_source : f48fb221ebe02c0137e521ea605953532808825d
2012-11-06 17:36:47 -08:00
Peter Van der Beken
1e5f78238f
Fix for bug 807330 (Make xpc_qsUnwrapThis/xpc_qsUnwrapArg deal with new DOM bindings). r=jst.
...
--HG--
extra : rebase_source : 3553f82516bfaa0764185f94e2eef616d9cd696d
2012-09-26 16:17:46 +02:00
Bill McCloskey
a31392133c
Bug 803376 - Allow wrappers to be reused (r=bholley)
2012-09-11 17:14:24 -07:00
Boris Zbarsky
80ce9e7dce
Bug 807226 part 0.5. More undefs to stop Windows headers from messing with our GetClassName. r=peterv
2012-11-09 07:59:41 -08:00
Boris Zbarsky
ffdef1ff6b
Bug 779048 part 0.5. Don't require a JSContext argument for nsJSUtils::GetStaticScriptGlobal. r=bholley
2012-11-09 07:43:57 -08:00
Fernando Jiménez
ab6877282c
Bug 809218 - Expose atob and btoa functions in xpcshell; r=mrbkap
2012-11-08 13:45:41 -08:00
Bobby Holley
dae0b41b61
Bug 809547 - Tests. r=bz
2012-11-07 22:40:48 -08:00
Benoit Jacob
76c68d3d90
Bug 809715 - Use MFBT's IsBaseOf to simplify QS_IS_NODE - r=ehsan
2012-11-07 21:33:31 -05:00
Bobby Holley
65525139b8
Bug 805807 - Filter setters. r=mrbkap
2012-11-07 15:45:50 -08:00
Bobby Holley
6482c110be
Bug 802557 - Mochitests. r=bz
2012-11-07 15:43:09 -08:00
Bobby Holley
2147e93e72
Bug 806751 - Pile more garbage into GetWrappedNativeOfJSObject. r=mrbkap
...
--HG--
extra : rebase_source : 9d290c7058dd4a1984aff94ef84376913947189e
2012-11-07 14:12:14 -08:00
Nathan Froyd
57e1984f1b
Backout a9cfcf4b62d9 (bug 803730), a5e214d4f8b0 (bug 803730), for intermittent oranges in newly added tests
2012-11-07 14:58:29 -05:00
Kannan Vijayan
34d532839a
Bug 803730 - Add mochitest for bug.
2012-11-07 13:03:31 -05:00
Bobby Holley
b9f313371c
Bug 809318 - Fix flakey tests. r=philor
2012-11-07 09:39:32 -08:00
Bobby Holley
b03878d5cf
Bug 808457 - Add Telemetry for Components.lookupMethod and Components.interfaces. r=mrbkap
2012-11-07 08:28:35 -08:00
Bobby Holley
b7a80f0b32
Bug 808611 - Move valueOf to nsIDOMLocation. r=mrbkap
2012-11-07 08:27:23 -08:00
Bobby Holley
2d5f3aaee1
Bug 808730 - Implement the 'IfFound' parent of ReparentWrapperIfFound. r=mrbkap
...
This is a pretty dumb bug, but we never actually hit this codepath at the moment.
We currently end up in wrapper by either explicitly calling
ReparentWrappedNativeIfFound (in nsNodeUtils and in nsHTMLDocument), or by moving
existing wrappers during orphan fixup. The former always passes a wrapper-cached
object, and the latter guarantees that we always have a wrapper. So we'd never
hit the "no wrapper cache, no wrapper" case in the current code.
2012-11-06 17:56:49 -08:00
Andrea Marchesini
c5757607e2
Bug 781425 - Part 1: Enconding and dictionary. r=mounir, sr=sicking
2012-11-06 18:23:13 -05:00
Bobby Holley
3606ad5e6b
Bug 807179 - Add a constructor for JSPropertyDescriptor. r=luke
2012-11-05 17:49:44 -08:00
Bobby Holley
4d2a0ba749
Bug 800864 - Add some more tests. r=bz
2012-11-05 17:15:53 -08:00
Bobby Holley
8c976f0b41
Bug 793969 - Tests. r=mrbkap
2012-11-05 17:10:34 -08:00
Boris Zbarsky
5865858536
Bug 807548. Enumerating an Xray should not see the 'constructor' property on DOM prototypes unless we're told to include non-enumerable properties. r=peterv
2012-11-05 11:58:03 -05:00
Ehsan Akhgari
a782ddd2a1
Merge mozilla-central into mozilla-inbound
2012-11-04 11:09:45 -05:00
Ms2ger
67f936b45b
Bug 801991 - Remove the ability to generate custom quickstubs; r=peterv
2012-11-04 09:00:06 +01:00
Bobby Holley
6877351937
Bug 805807 - Rearchitect filtering policies so that check() doesn't throw on denial. r=mrbkap
...
This is another one of those annoying situaitons in XPConnect right now where we
can't ask a question without potentially throwing if the answer is no. There's
also a bunch of unused cruft in here (like the Perm*Access stuff), so this stuff
was ripe for a spring cleaning. Unfortunately, I wasn't able to divide this patch
up nicely. Sorry for the big diff. :-(
In a nutshell, this patch changes things so that Policy::check() just becomes
a predicate that says whether the access is allowed or not. There's the remote
possibility that one of the underlying JSAPI calls in a ::check() implementation
might throw, so callers to ::check() should check JS_IsExceptionPending
afterwards (this doesn't catch OOM, but we can just continue along until the
next OOM-triggering operation and throw there).
Aside from exceptional cases, callers should call Policy::deny if they want to
report the failure. Policy::deny returns success value that should be returned
to the wrapper's consumer.
2012-11-02 21:47:49 -03:00
Bobby Holley
d2fe9d94ec
Bug 805807 - Make Components wrapper throw on denial. r=mrbkap
...
There's really no reason to use the wishy-washy static COW Deny() here.
Also, note that the xpcshell-test wasn't testing what it thought it
was - interfaces is accessible from content code.
2012-11-02 21:47:49 -03:00
Bobby Holley
f923e7af7f
Bug 731471 - Crashtesty-mochitest. r=me
2012-11-04 07:41:01 -08:00
Peter Van der Beken
ba4378de1d
Test for bug 798264.
2012-10-12 12:48:25 +02:00
Ed Morley
14d92519c8
Backout 23c9f61a243b & 6ca11f4b470c (bug 805807) for mochitest-1 orange in test_contextmenu.html
2012-11-02 14:12:51 +00:00
Bobby Holley
0123f9f2d2
Bug 805807 - Rearchitect filtering policies so that check() doesn't throw on denial. r=mrbkap
...
This is another one of those annoying situaitons in XPConnect right now where we
can't ask a question without potentially throwing if the answer is no. There's
also a bunch of unused cruft in here (like the Perm*Access stuff), so this stuff
was ripe for a spring cleaning. Unfortunately, I wasn't able to divide this patch
up nicely. Sorry for the big diff. :-(
In a nutshell, this patch changes things so that Policy::check() just becomes
a predicate that says whether the access is allowed or not. There's the remote
possibility that one of the underlying JSAPI calls in a ::check() implementation
might throw, so callers to ::check() should check JS_IsExceptionPending
afterwards (this doesn't catch OOM, but we can just continue along until the
next OOM-triggering operation and throw there).
Aside from exceptional cases, callers should call Policy::deny if they want to
report the failure. Policy::deny returns success value that should be returned
to the wrapper's consumer.
2012-11-02 13:27:59 +01:00
Bobby Holley
7c2fa965c3
Bug 805807 - Make Components wrapper throw on denial. r=mrbkap
...
There's really no reason to use the wishy-washy static COW Deny() here.
Also, note that the xpcshell-test wasn't testing what it thought it
was - interfaces is accessible from content code.
2012-11-02 13:27:59 +01:00
Nicholas Nethercote
7c4faece03
Bug 806283 - Split up and add native iterators to "object/misc" memory reports. r=jorendorff.
...
--HG--
extra : rebase_source : 867e178d0c921de9e144fb274e1c0d77c8845b81
2012-11-01 16:51:04 -07:00
Kyle Huey
45adfbf2c8
Bug 798491: Add an option to stick all chrome JSMs/JS components in the same compartment. r=mrbkap,philikon
...
--HG--
extra : rebase_source : 98337b6a8c07d05e8c961a452dd05a7d75c3c60b
2012-10-31 09:13:28 -07:00
Tom Schuster
cbb3282bdd
Bug 805222 - Change some usages of GetFunctionId to GetFunctionDisplayId for better JS stacktrace. r=bholley,robcee
2012-10-31 13:34:42 +01:00
Vicamo Yang
e6e6deb486
Backout 67cb43bb8865: Breaks B2G Marionette
2012-10-31 16:35:11 +08:00
Andrew McCreight
0c7c1a6f53
Bug 806433 - Make mReleaseRunnable a ref ptr. r=smaug
2012-10-30 20:01:31 -07:00
Jonas Sicking
05fe127cc1
Bug 806587: Restore getCodebasePrincipal since extensions use it. r=mounir
2012-10-30 22:24:41 +01:00
Boris Zbarsky
90dce3227b
Bug 801819. Remove nsIDOMCSS2Properties and the classinfo bits for CSS declarations. r=peterv,dbaron
2012-10-30 17:14:06 -04:00
Terrence Cole
e78fa7d5a1
Bug 805080 - Remove unused CESU8 support from SpiderMonkey; r=luke
...
We have many CESU8 paths in SpiderMonkey which are completely unused and
untested. We have many more "UTF-8" paths which are really mislabled CESU8 paths
and visa-versa. This patch attempts to disentable all of the various encoding
options in SpiderMonkey.
2012-10-29 13:55:17 -07:00
Bobby Holley
325938f110
Bug 804630 - Tests for exposing prototype properties on a derived object. r=mrbkap
2012-10-30 18:29:11 +01:00
Kyle Huey
7457de64ad
Bug 798491: Add an option to stick all chrome JSMs/JS components in the same compartment. r=mrbkap,philikon
2012-10-30 12:28:11 -07:00
Ed Morley
a7bb0ec116
Backout a145ded68994, e0cf397089ec & 1545e91c658e (bug 798491) for bustage on a CLOSED TREE
2012-10-30 17:02:31 +00:00
Kyle Huey
3bc1160788
Bug 798491: Followup bustage fix.
2012-10-30 08:42:47 -07:00
Kyle Huey
dd0cfd935a
Bug 798491: Add an option to stick all chrome JSMs/JS components in the same compartment. r=mrbkap,philikon
2012-10-30 08:26:12 -07:00
Jacek Szpot
bea8356b2c
Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan
2012-10-26 15:32:10 +02:00
Peter Van der Beken
99782186da
Fix for bug 778152 (Content window does not have an XMLHttpRequest property when accessed via an Xray wrapper in a subscript). r=bz.
...
Switch from using the interface objects from the Xrays compartment to wrapping
interface objects and interface prototype objects in Xrays. Make dom binding
Xrays deal with both instance objects and interface and interface prototype
objects.
2012-10-09 20:50:27 +02:00
Bobby Holley
b9ab242827
Bug 803068 - Merge DirectWrapper and Wrapper. r=ejpbruel
...
--HG--
extra : rebase_source : a2b98a9585c6f7761747cfaf55684e6eeed91344
2012-10-29 16:52:53 +01:00
Bobby Holley
b709b3dc7f
Bug 803068 - Manually grab the BaseProxyHandler derived traps in SandboxProxyHandler. r=ejpbruel
...
Let's just bite the bullet and do this here. It will let us get rid of
IndirectProxyHandler, which has really overcomplicated our proxy hierarchy.
--HG--
extra : rebase_source : 7e81529936bc256d672e40537eb6abca6374e52c
2012-10-29 16:52:53 +01:00
Bobby Holley
b8b176e756
Bug 797206 - Remove GetPrincipalFromContext. r=bz
2012-10-29 15:55:36 +01:00
Peter Van der Beken
da84553f1f
Fix for bug 778152 (Content window does not have an XMLHttpRequest property when accessed via an Xray wrapper in a subscript) - rename ProtoOrIfaceArray. r=bz.
...
--HG--
extra : rebase_source : c426270fc1ebee818629bd94dfc8d11af59bfc00
2012-10-09 20:50:27 +02:00
Peter Van der Beken
9194dae35e
Fix for bug 804992 (Enable objects with new DOM bindings to be parent of other DOM objects). r=bz.
...
--HG--
extra : rebase_source : f07cade82dad0216d94e68dd0c0f495977abeb31
2012-09-12 22:29:30 +02:00
Peter Van der Beken
c4a61ef363
Fix for bug 804732 (Remove mCachedDOMPrototypes). r=bz.
...
--HG--
extra : rebase_source : dc9ffe5f37dbc0542cbb47384b2d25472c70d801
2012-10-23 22:11:58 +02:00
Nicholas Nethercote
f3101549fc
Bug 805915 (part 5) - Add more detail to shape memory reports. r=luke.
...
--HG--
extra : rebase_source : f1a05ea15b78e5f33d6398accca3333ab29fa1c6
2012-10-29 08:51:21 +11:00
Nicholas Nethercote
77a87b6eb8
Bug 805915 (part 4) - Add more detail to string memory reports. r=luke.
...
--HG--
extra : rebase_source : 010e28f10917ae4cc9d0d11abace9bcdabf0aba8
2012-10-29 08:51:21 +11:00
Nicholas Nethercote
94ad872ba1
Bug 805915 (part 2) - Add more detail to object memory reports. r=luke.
...
--HG--
extra : rebase_source : e54ece88753280ccac284f6265fd92310dc1bec6
2012-10-29 08:51:21 +11:00
Nicholas Nethercote
5286ab9159
Bug 805915 (part 1) - Rename the "cross-compartment-wrappers" memory report. r=luke.
...
--HG--
extra : rebase_source : a9689bde17b043bc8bec55c0307c0bbf94768232
2012-10-29 08:51:21 +11:00
Ryan VanderMeulen
ce9be1b16b
Bug 799917 - Backout for various regressions.
2012-10-28 08:49:20 -04:00
Bill McCloskey
17ffbf5002
Bug 692267 - Remove jsgc.h from INSTALLED_HEADERS (r=terrence)
2012-10-26 11:17:24 -07:00
Andrew Quartey
1d0db40554
Bug 792581 - part 20: Replace LL_UI2L macro with int64_t cast. r=ehsan
2012-10-25 19:25:57 -04:00
Nikhil Marathe
814dbc2a57
Bug 804174 - Inline CallerHasUniversalXPConnect with IsCallerChrome. r=mccr8
2012-10-25 16:10:53 -07:00
Bobby Holley
94d3058170
Bug 797821 - Null check to fix intermittent orange. r=me
2012-10-25 18:36:45 +02:00
Ehsan Akhgari
78b2656cbc
Backed out 2 changesets (bug 579517)
...
Backed out changeset 5298adc70963
Backed out changeset 86ccf7c918ce (bug 579517)
2012-10-25 12:32:24 -04:00
Ehsan Akhgari
03be701616
Code hygiene: don't use PR_TRUE and PR_FALSE, and use stdint types instead of PRInt types (no bug really, but you could say bug 579517)
2012-10-25 11:48:19 -04:00
Bobby Holley
2c584933ef
Bug 797821 - Address Ms2ger's review comments. r=me
2012-10-25 17:01:09 +02:00
Bobby Holley
888856a6f7
Bug 797821 - Remove the XPConnect Compartment Set. r=mrbkap
2012-10-25 17:01:09 +02:00
Bobby Holley
461c6572fd
Bug 797821 - Hoist XPConnect-y stuff out of the compartment private and into the XPCWrappedNativeScope. r=mrbkap
...
This change means we no longer have to keep around a set of XPConnect compartments.
We keep the compartment private around for non-xpconnecty stuff like about:memory
instrumentation that needs to happen on non-xpconnect compartments.
2012-10-25 17:01:09 +02:00
Bobby Holley
3d0731683a
Bug 797821 - Removed the unused reserved slot for XPConnect globals. r=mrbkap
2012-10-25 17:01:09 +02:00
Bobby Holley
1fd1acf5e9
Bug 797821 - Remove JSCLASS_XPCONNECT_GLOBAL flag. r=mrbkap
2012-10-25 17:01:09 +02:00
Bobby Holley
92a2cd3a9d
Bug 797821 - Decide whether we need to trace DOM stuff based on more relevant information than JSCLASS_XPCONNECT_GLOBAL. r=mrbkap
...
This will let us rip out that flag.
2012-10-25 17:01:08 +02:00
Bobby Holley
a6b39f268c
Bug 797821 - Remove FindInJSObjectScope and friends. r=mrbkap
...
\o/
2012-10-25 17:01:08 +02:00
Bobby Holley
f46b3babff
Bug 797821 - Replace usage of XPCWrappedNativeScope::FindInJSObjectScope(ccx, obj) with GetObjectScope(obj). r=mrbkap
2012-10-25 17:01:08 +02:00
Bobby Holley
723b180d23
Bug 797821 - Create XPCWrappedNativeScopes immediately after global creation. r=mrbkap
2012-10-25 17:01:08 +02:00
Bobby Holley
1c625b67e4
Bug 797821 - Remove xpc_NewSystemInheritingJSObject and cached mJSPrototypeObject. r=mrbkap
...
xpc_NewSystemInheritingJSObject is totally unnecessary now that the system bit
has been removed (\o/). Furthermore, the mJSPrototypeObject optimization is
really dumb. it complicates tracing significantly, and we don't actually use it
in any critical places: XPCWrappedNative and slim wrapper creation use a different
prototype, so this is used only for the creation of tearoff reflectors (seldom/
never used), XPCWrappedNativeProto objects, and the nohelper prototype on the
scope (once per scope).
We could actually just pass NULL to JS_NewObject and let it deal. However, this
would actually trigger a dynamic lookup for the prototype object of the
associated JSClass, which isn't what we want. So we just explicitly pass in
Object.prototype.
2012-10-25 17:01:08 +02:00
Bobby Holley
39c5c62a72
Bug 797821 - Remove unused aNative parameter to XPCWrappedNativeScope creation. r=mrbkap
2012-10-25 17:01:08 +02:00
Bobby Holley
e99bbde601
Bug 797821 - Stop storing mScriptObjectPrincipal. r=mrbkap
2012-10-25 17:01:08 +02:00
Bobby Holley
ea14cf4726
Bug 797821 - Stop making nsXBLDocumentInfo and nsXULPrototypeDocument globals with XPConnect. r=mrbkap
...
We already weren't creating a scope for them. They're generally pretty isolated
and are just used for holding functions that get cloned into other scopes.
Apparently mccr8 once found an edge from an nsXULPrototypeDocument scope into
another scope, but I don't think that should really break anything.
2012-10-25 17:01:07 +02:00
Bobby Holley
a7207d9cf8
Bug 797821 - Allow compartment privates to be lazily created when using them just for storing about:memory URIs. r=mrbkap
...
This will allow us to stop making nsXULPrototypeDocument and nsXBLDocumentInfo
globals XPConnect globals.
2012-10-25 17:01:07 +02:00
Bobby Holley
4f6ed4314a
Bug 797821 - Stop passing wantXrays directly to CreateGlobalObject. r=mrbkap
...
This can happen after the fact where it needs to.
2012-10-25 17:01:07 +02:00
Bobby Holley
2b65e9933d
Bug 797821 - Loosen the CompartmentPrivate contract so that having one does not imply being in the compartment set. r=mrbkap
...
The compartment set goes away in later patches anyway. This is to allow us to
create compartment privates for things like XUL prototype document globals
without having to put them in the set and trace expandos and such.
2012-10-25 17:01:07 +02:00
Bobby Holley
597176da8c
Bug 797821 - Simplify the call signature for XPC::CreateGlobalObject. r=mrbkap
2012-10-25 17:01:07 +02:00
Bobby Holley
5b8ecc6233
Bug 797821 - Remove CreateNewGlobal. r=mrbkap
...
It doesn't do anything useful at this point.
2012-10-25 17:01:07 +02:00
Bobby Holley
4ae7a4efff
Bug 797821 - Remove the dependency of XPCWrappedNativeScope instantiation on XPCCallContext and expose the raw constructor. r=mrbkap
2012-10-25 17:01:07 +02:00
Bobby Holley
1d77b1d068
Bug 801576 - Android bustage fix. r=me
2012-10-24 14:18:39 +02:00
Bobby Holley
ed10eb5a54
Bug 801576 - Add tests for the same-origin policy. r=mrbkap
2012-10-24 12:04:19 +02:00
Bobby Holley
617a6ac6bd
Bug 801576 - Forbid cross-origin access to the History object. r=mrbkap
2012-10-24 12:04:18 +02:00
Ryan VanderMeulen
a25b975d2e
Merge m-c to inbound.
2012-10-23 22:41:34 -04:00
Ryan VanderMeulen
12d8547592
Merge the last PGO-green inbound changeset to m-c.
2012-10-23 22:28:33 -04:00
Olli Pettay
f060a0ba42
Bug 780770, nsThread::SetMainThreadObserver, r=bz+bholley
2012-10-24 01:26:36 +03:00
Benjamin Peterson
b26c0de860
Bug 804404 - Set source hook in XPC initialization. r=bz
2012-10-23 18:09:00 -04:00
Chuck Lee
3156424831
Bug 780142 - Rewrite MozWifiConnectionInfoEvent. r=smaug
2012-10-22 18:18:26 +08:00
Chuck Lee
c467984383
Bug 780142 - Rewrite WifiStatusChangeEvent. r=smaug
2012-10-22 17:17:18 +08:00
Nick Hurley
e7f284c9d3
Bug 536324 part 3 - Change consumers of nsIChannel. r=sworkman
2012-10-22 10:51:07 -07:00
Andres Hernandez
3da7d5c215
Bug 769298 - Avoid logging script errors coming from private windows in the global error console
2012-10-19 15:52:21 -06:00
Boris Zbarsky
04d6d1040c
Bug 801712 part 2. Switch ImageData to WebIDL bindings. r=peterv
2012-10-22 13:08:52 -04:00
Boris Zbarsky
f49c8f247c
Bug 801712 part 1. Add the WebIDL binding API to ImageData. r=peterv
2012-10-22 13:08:52 -04:00
Boris Zbarsky
4ca88b5279
Bug 801723. WebIDL binding objects may not have classinfo even if they're nsISupports. r=peterv
2012-10-22 13:08:51 -04:00
Bobby Holley
bac4dc387e
Bug 789224 - Separate certificate principals out from CAPS. r=dveditz
...
There's no longer any reason why "certificate principals" need to be principals at all.
I tried to rip them out entirely, but it looks like they're still used vestigially at XPI
install time to display author information. But there's no reason that they have to be
porkbarreled into the security-critical objects that we pass around all over the place.
So let's make them their own deal.
I was tempted to call them "certificate holders", but that would involve renaming methods and
cause more compat fuss than necessary.
--HG--
rename : caps/idl/nsISignatureVerifier.idl => security/manager/ssl/public/nsISignatureVerifier.idl
2012-10-22 08:29:56 +02:00
Bobby Holley
9735e11f83
Bug 789224 - Remove capability manager stuff in nsScriptSecurityManager. r=mrbkap
2012-10-22 08:29:55 +02:00
Peter Van der Beken
ea23f44eff
Fix for bug 803872 (Remove remaining references to the dom.new_bindings pref). r=Ms2ger.
2012-10-21 13:06:55 +02:00
Ms2ger
3accfeaf06
Bug 796903 - Part b: Remove classinfo from DOMImplementation; r=bz
2012-10-21 09:38:41 +02:00
Olli Pettay
35f1ebaa50
Bug 802829 - Don't add nsXPCWrappedJS objects to CC graph if they only point to a certainly alive object, r=mccr8
2012-10-20 22:53:25 +03:00
Peter Van der Beken
e86cd8818c
Fix for bug 801083 (Remove old proxy-based list bindings). r=bz.
2012-10-13 14:50:24 +02:00
foudfou
6f0250e530
Bug 799537 - Sort xpconnect chrome mochitests in tests/chrome. r=bholley
2012-10-19 23:16:07 +02:00
foudfou
de4dd87170
Bug 799537 - Move xpconnect chrome mochitests in tests/mochitest to tests/chrome. r=bholley
...
--HG--
rename : js/xpconnect/tests/mochitest/test_bug361111.xul => js/xpconnect/tests/chrome/test_bug361111.xul
rename : js/xpconnect/tests/mochitest/test_bug760131.html => js/xpconnect/tests/chrome/test_bug760131.html
2012-10-19 22:44:26 +02:00
Bobby Holley
1fc641f872
Bug 793969 - Define an identity transformation at the Xray layer. r=mrbkap
2012-10-19 21:00:48 +02:00
Isaac Aggrey
8c55998b7e
Bug 794510: Part 1 - Build with NO_NSPR_10_SUPPORT by default; r=ehsan,glandium,wtc
2012-10-11 01:00:54 -05:00
Peter Van der Beken
a69ce442c1
Fix for bug 773780 (Add API for new DOM bindings for Node). r=bz.
...
--HG--
extra : rebase_source : 5dd51c4ad5274da9235c8c341b0531f234e95a91
2012-10-09 14:31:24 +02:00
Ryan VanderMeulen
f33ec87f1e
Bug 798123 - Fix build bustage. r=Waldo
...
CLOSED TREE
2012-10-18 22:21:38 -04:00
Gabriele Svelto
59704eda24
Bug 798123 - Replace the array conversion functions in BluetoothUtils.cpp with those in nsTArrayHelpers.h. r=mrbkap
2012-10-18 15:20:54 +02:00
Benjamin Peterson
c1b83b29cb
Bug 803358 - Remove JSOPTION_RELIMIT. r=luke
2012-10-18 21:06:42 -04:00
Josh Matthews
ab013b1329
Backed out changeset 12002e126b39 (bug 769298)
2012-10-18 17:27:23 -04:00
Andres Hernandez
67591e3369
Bug 769298 - Avoid logging script errors coming from private windows in the global error console
2012-10-18 00:24:56 -06:00
Bobby Holley
b9899be941
Bug 802968 - Fix racy test behavior. r=me DONTBUILD
...
--HG--
extra : rebase_source : 631b1d7d8efc625725b9a733c8e065030ff795e1
2012-10-18 14:41:13 +02:00
Bill McCloskey
17957fa850
Bug 798678 - Weakmap key preservation test (r=mccr8)
2012-10-17 18:22:54 -07:00
Bill McCloskey
0a9fd297da
Bug 798678 - Add weakmap key preservation support to cycle collector (r=mccr8)
2012-10-17 18:22:46 -07:00
Bill McCloskey
9748750db4
Bug 798678 - Refactor wrapper preservation for weakmaps (r=mccr8)
2012-10-08 18:22:47 -07:00
Bill McCloskey
0728920867
Bug 714050 - Add support for optional JS helper threads (r=luke)
2012-10-16 11:57:09 -07:00
Bobby Holley
52f96099f5
Bug 801241 - Properly handle |false| return false from JS_DescribeScriptedCaller. r=bz
2012-10-17 19:44:30 +02:00
Ehsan Akhgari
f5557dac78
Merge mozilla-central into mozilla-inbound
2012-10-17 13:03:16 -04:00
bzbarsky@mit.edu
06f6ce717a
Bug 802243 - WrapperCache DOMStringMap, quickstub, r=smaug
...
--HG--
extra : rebase_source : 3c1bb6ab18692d647461af42e732e5f150ae8500
2012-10-17 04:14:32 +03:00
Bobby Holley
3242a23dc7
Bug 792280 - Only censor function.caller for non-same-origin calls. r=luke
2012-10-17 17:56:49 +02:00
Justin Lebar
29781b32ab
Bug 801780 - Part 2: Explicitly call out long strings in about:memory. r=njn
2012-10-17 10:44:31 -04:00
Bobby Holley
8c277bc6ef
Bug 797304 - Replace MoveWrapper nonsense with orphan fixup. r=peterv
2012-10-16 15:07:54 +02:00
Bobby Holley
5ab5c9ac07
Bug 797304 - Add special handling for nuked parents in orphan fixup. r=peterv
2012-10-16 15:07:54 +02:00
Bobby Holley
ba09c72553
Bug 797304 - Be more aggressive when fixing up orphans. r=peterv
...
To make stronger assumptions, we should dig deeper on the parent chain, and also morph any slim wrappers. This is slightly slower, but not much, since this stuff only gets called for HTML documents, and the parent chains there tend to be short. Moreover, this only gets called during document.open(), where performance doesn't matter so much.
2012-10-16 15:07:54 +02:00