Commit Graph

1573 Commits

Author SHA1 Message Date
Kannan Vijayan
fc947af223 Bug 803730 - Add mochitest for bug. 2012-11-07 13:03:31 -05:00
Bobby Holley
5ede664aac Bug 809318 - Fix flakey tests. r=philor 2012-11-07 09:39:32 -08:00
Bobby Holley
42c232e7e3 Bug 808457 - Add Telemetry for Components.lookupMethod and Components.interfaces. r=mrbkap 2012-11-07 08:28:35 -08:00
Bobby Holley
0d4bc850b4 Bug 808611 - Move valueOf to nsIDOMLocation. r=mrbkap 2012-11-07 08:27:23 -08:00
Bobby Holley
9a5d674c8c 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
6a0fe78592 Bug 781425 - Part 1: Enconding and dictionary. r=mounir, sr=sicking 2012-11-06 18:23:13 -05:00
Bobby Holley
327f8ca891 Bug 807179 - Add a constructor for JSPropertyDescriptor. r=luke 2012-11-05 17:49:44 -08:00
Bobby Holley
35a5c3a7c6 Bug 800864 - Add some more tests. r=bz 2012-11-05 17:15:53 -08:00
Bobby Holley
60c3e2181b Bug 793969 - Tests. r=mrbkap 2012-11-05 17:10:34 -08:00
Boris Zbarsky
e0cb69bbd9 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
6e3b90c43e Merge mozilla-central into mozilla-inbound 2012-11-04 11:09:45 -05:00
Ms2ger
a0504faba0 Bug 801991 - Remove the ability to generate custom quickstubs; r=peterv 2012-11-04 09:00:06 +01:00
Bobby Holley
8b06fa3c7e 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
c351c18d32 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
a4ce179e40 Bug 731471 - Crashtesty-mochitest. r=me 2012-11-04 07:41:01 -08:00
Peter Van der Beken
5f0fc13698 Test for bug 798264. 2012-10-12 12:48:25 +02:00
Ed Morley
b159aab211 Backout 23c9f61a243b & 6ca11f4b470c (bug 805807) for mochitest-1 orange in test_contextmenu.html 2012-11-02 14:12:51 +00:00
Bobby Holley
2d408f61a6 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
ac090a0e20 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
1c9660a37a 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
1482122303 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
85c2e983ae 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
8297cdabd6 Backout 67cb43bb8865: Breaks B2G Marionette 2012-10-31 16:35:11 +08:00
Andrew McCreight
c8dcda07ec Bug 806433 - Make mReleaseRunnable a ref ptr. r=smaug 2012-10-30 20:01:31 -07:00
Jonas Sicking
c7d1bf58ee Bug 806587: Restore getCodebasePrincipal since extensions use it. r=mounir 2012-10-30 22:24:41 +01:00
Boris Zbarsky
7cb30ff9c6 Bug 801819. Remove nsIDOMCSS2Properties and the classinfo bits for CSS declarations. r=peterv,dbaron 2012-10-30 17:14:06 -04:00
Terrence Cole
76e866779c 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
ce50e5bd1b Bug 804630 - Tests for exposing prototype properties on a derived object. r=mrbkap 2012-10-30 18:29:11 +01:00
Kyle Huey
bdf47895bb 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
777eed8444 Backout a145ded68994, e0cf397089ec & 1545e91c658e (bug 798491) for bustage on a CLOSED TREE 2012-10-30 17:02:31 +00:00
Kyle Huey
331f5d8222 Bug 798491: Followup bustage fix. 2012-10-30 08:42:47 -07:00
Kyle Huey
aa1997a51a 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
0b35b0e3d8 Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
Peter Van der Beken
1ef60a85a4 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
b4461f0bed Bug 803068 - Merge DirectWrapper and Wrapper. r=ejpbruel
--HG--
extra : rebase_source : a2b98a9585c6f7761747cfaf55684e6eeed91344
2012-10-29 16:52:53 +01:00
Bobby Holley
8eabbd467b 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
c45ac66eb0 Bug 797206 - Remove GetPrincipalFromContext. r=bz 2012-10-29 15:55:36 +01:00
Peter Van der Beken
efd72d6b0c 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
705e0cc63b 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
09dd1ac571 Fix for bug 804732 (Remove mCachedDOMPrototypes). r=bz.
--HG--
extra : rebase_source : dc9ffe5f37dbc0542cbb47384b2d25472c70d801
2012-10-23 22:11:58 +02:00
Nicholas Nethercote
dfb006bf92 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
dd15137c21 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
17209cb3c5 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
d46cd5f2d4 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
dd87cc277e Bug 799917 - Backout for various regressions. 2012-10-28 08:49:20 -04:00
Bill McCloskey
2e039c483d Bug 692267 - Remove jsgc.h from INSTALLED_HEADERS (r=terrence) 2012-10-26 11:17:24 -07:00
Andrew Quartey
1d28872093 Bug 792581 - part 20: Replace LL_UI2L macro with int64_t cast. r=ehsan 2012-10-25 19:25:57 -04:00
Nikhil Marathe
453b3dce5f Bug 804174 - Inline CallerHasUniversalXPConnect with IsCallerChrome. r=mccr8 2012-10-25 16:10:53 -07:00
Bobby Holley
488778aa80 Bug 797821 - Null check to fix intermittent orange. r=me 2012-10-25 18:36:45 +02:00
Ehsan Akhgari
f117c7a7b0 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
48b5c1a608 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
6bae1ef04d Bug 797821 - Address Ms2ger's review comments. r=me 2012-10-25 17:01:09 +02:00
Bobby Holley
c8500076c1 Bug 797821 - Remove the XPConnect Compartment Set. r=mrbkap 2012-10-25 17:01:09 +02:00
Bobby Holley
c562949e50 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
a257acaeb2 Bug 797821 - Removed the unused reserved slot for XPConnect globals. r=mrbkap 2012-10-25 17:01:09 +02:00
Bobby Holley
4ab5b9a39a Bug 797821 - Remove JSCLASS_XPCONNECT_GLOBAL flag. r=mrbkap 2012-10-25 17:01:09 +02:00
Bobby Holley
c14f6e265e 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
19e17dc08a Bug 797821 - Remove FindInJSObjectScope and friends. r=mrbkap
\o/
2012-10-25 17:01:08 +02:00
Bobby Holley
05aea8b835 Bug 797821 - Replace usage of XPCWrappedNativeScope::FindInJSObjectScope(ccx, obj) with GetObjectScope(obj). r=mrbkap 2012-10-25 17:01:08 +02:00
Bobby Holley
18d529092b Bug 797821 - Create XPCWrappedNativeScopes immediately after global creation. r=mrbkap 2012-10-25 17:01:08 +02:00
Bobby Holley
36cb31b1bc 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
ddca166933 Bug 797821 - Remove unused aNative parameter to XPCWrappedNativeScope creation. r=mrbkap 2012-10-25 17:01:08 +02:00
Bobby Holley
9e5696d887 Bug 797821 - Stop storing mScriptObjectPrincipal. r=mrbkap 2012-10-25 17:01:08 +02:00
Bobby Holley
703a9798c9 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
d6ecaf26fe 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
826ce1e16b 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
961bc14d2b 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
3b50be121c Bug 797821 - Simplify the call signature for XPC::CreateGlobalObject. r=mrbkap 2012-10-25 17:01:07 +02:00
Bobby Holley
78e479ed30 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
b04ca561e8 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
39688c3cc6 Bug 801576 - Android bustage fix. r=me 2012-10-24 14:18:39 +02:00
Bobby Holley
add541742c Bug 801576 - Add tests for the same-origin policy. r=mrbkap 2012-10-24 12:04:19 +02:00
Bobby Holley
32af1d27d9 Bug 801576 - Forbid cross-origin access to the History object. r=mrbkap 2012-10-24 12:04:18 +02:00
Ryan VanderMeulen
f514f1397a Merge m-c to inbound. 2012-10-23 22:41:34 -04:00
Ryan VanderMeulen
ce44cdfbd3 Merge the last PGO-green inbound changeset to m-c. 2012-10-23 22:28:33 -04:00
Olli Pettay
b0e3180948 Bug 780770, nsThread::SetMainThreadObserver, r=bz+bholley 2012-10-24 01:26:36 +03:00
Benjamin Peterson
1adbee29f9 Bug 804404 - Set source hook in XPC initialization. r=bz 2012-10-23 18:09:00 -04:00
Chuck Lee
ddac623d6a Bug 780142 - Rewrite MozWifiConnectionInfoEvent. r=smaug 2012-10-22 18:18:26 +08:00
Chuck Lee
a7168749c9 Bug 780142 - Rewrite WifiStatusChangeEvent. r=smaug 2012-10-22 17:17:18 +08:00
Nick Hurley
31985d7fa6 Bug 536324 part 3 - Change consumers of nsIChannel. r=sworkman 2012-10-22 10:51:07 -07:00
Andres Hernandez
e456defc7f 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
2c0d8809e7 Bug 801712 part 2. Switch ImageData to WebIDL bindings. r=peterv 2012-10-22 13:08:52 -04:00
Boris Zbarsky
ad8c0e8444 Bug 801712 part 1. Add the WebIDL binding API to ImageData. r=peterv 2012-10-22 13:08:52 -04:00
Boris Zbarsky
5592281fbe 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
dc33cae831 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
9f03d6c96b Bug 789224 - Remove capability manager stuff in nsScriptSecurityManager. r=mrbkap 2012-10-22 08:29:55 +02:00
Peter Van der Beken
9f37e05526 Fix for bug 803872 (Remove remaining references to the dom.new_bindings pref). r=Ms2ger. 2012-10-21 13:06:55 +02:00
Ms2ger
ff1fb0488f Bug 796903 - Part b: Remove classinfo from DOMImplementation; r=bz 2012-10-21 09:38:41 +02:00
Olli Pettay
2e10612fef 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
0fca6b2112 Fix for bug 801083 (Remove old proxy-based list bindings). r=bz. 2012-10-13 14:50:24 +02:00
foudfou
96e3df5cd9 Bug 799537 - Sort xpconnect chrome mochitests in tests/chrome. r=bholley 2012-10-19 23:16:07 +02:00
foudfou
f830f40097 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
8f227813bb Bug 793969 - Define an identity transformation at the Xray layer. r=mrbkap 2012-10-19 21:00:48 +02:00
Isaac Aggrey
5d8d5083ea 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
57adeb4354 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
e7c57435cb Bug 798123 - Fix build bustage. r=Waldo
CLOSED TREE
2012-10-18 22:21:38 -04:00
Gabriele Svelto
cc3411e5ab 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
632234f58e Bug 803358 - Remove JSOPTION_RELIMIT. r=luke 2012-10-18 21:06:42 -04:00
Josh Matthews
17184e0206 Backed out changeset 12002e126b39 (bug 769298) 2012-10-18 17:27:23 -04:00
Andres Hernandez
5714d9cba9 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
18c36e53ac Bug 802968 - Fix racy test behavior. r=me DONTBUILD
--HG--
extra : rebase_source : 631b1d7d8efc625725b9a733c8e065030ff795e1
2012-10-18 14:41:13 +02:00
Bill McCloskey
513173337d Bug 798678 - Weakmap key preservation test (r=mccr8) 2012-10-17 18:22:54 -07:00
Bill McCloskey
e1b97bbdea Bug 798678 - Add weakmap key preservation support to cycle collector (r=mccr8) 2012-10-17 18:22:46 -07:00
Bill McCloskey
0d30c52e22 Bug 798678 - Refactor wrapper preservation for weakmaps (r=mccr8) 2012-10-08 18:22:47 -07:00
Bill McCloskey
760cd44124 Bug 714050 - Add support for optional JS helper threads (r=luke) 2012-10-16 11:57:09 -07:00
Bobby Holley
a0bafb7cc3 Bug 801241 - Properly handle |false| return false from JS_DescribeScriptedCaller. r=bz 2012-10-17 19:44:30 +02:00
Ehsan Akhgari
1a3d718b58 Merge mozilla-central into mozilla-inbound 2012-10-17 13:03:16 -04:00
bzbarsky@mit.edu
696273ce6e Bug 802243 - WrapperCache DOMStringMap, quickstub, r=smaug
--HG--
extra : rebase_source : 3c1bb6ab18692d647461af42e732e5f150ae8500
2012-10-17 04:14:32 +03:00
Bobby Holley
fcedab455b Bug 792280 - Only censor function.caller for non-same-origin calls. r=luke 2012-10-17 17:56:49 +02:00
Justin Lebar
21c38c75e3 Bug 801780 - Part 2: Explicitly call out long strings in about:memory. r=njn 2012-10-17 10:44:31 -04:00
Bobby Holley
2d8eff9c4b Bug 797304 - Replace MoveWrapper nonsense with orphan fixup. r=peterv 2012-10-16 15:07:54 +02:00
Bobby Holley
12bf387728 Bug 797304 - Add special handling for nuked parents in orphan fixup. r=peterv 2012-10-16 15:07:54 +02:00
Bobby Holley
f688764987 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
David Zbarsky
6d18b74223 Bug 801803: More nsresult as enum class creates warnings r=me 2012-10-16 00:26:51 -04:00
David Zbarsky
35ce833fdb Backout 368cd30cccda for bustage 2012-10-15 23:52:17 -04:00
David Zbarsky
95cf6682cb Bug 801803: More nsresult as enum class creates warnings r=me 2012-10-15 23:37:34 -04:00
Ehsan Akhgari
ff1b98f157 Bug 801346 - Remove s_VOID_id from dombindings.cpp; r=bholley 2012-10-15 09:05:09 -04:00
Peter Van der Beken
12f507617a Fix for bug 799465 (Add complete support for non-nsISupports objects in new DOM bindings) - fix CC traversal and wrapper preservation. r=bz.
--HG--
rename : dom/tests/mochitest/chrome/file_bug800817.xul => dom/tests/mochitest/chrome/file_bug799299.xul
rename : dom/tests/mochitest/chrome/test_bug800817.xul => dom/tests/mochitest/chrome/test_bug799299.xul
extra : rebase_source : bed68ffa15fe5933994c33fbd94ad2b597b5b1b9
2012-09-26 20:12:15 +02:00
Aryeh Gregor
45b3e80460 Bug 799917 - Make document.characterSet always lowercase; r=bz,f=hsivonen,smontagu 2012-10-14 10:13:19 +02:00
Aryeh Gregor
2f24871362 Bug 799905 - .URL and .compatMode should be defined on Document, not HTMLDocument; r=bz 2012-10-11 14:48:31 +02:00
Andrew Quartey
464807b57d Bug 792581 - part 16: Replace LL_L2UI macro with uint32_t cast. r=ehsan 2012-10-12 13:29:11 -04:00
Justin Lebar
9ed3356569 Bug 798510 - Part 1: Use mincore to correctly calculate js::StackSpace::sizeOfCommitted() on *nix. r=luke,njn
Previously, we assumed all memory was committed, thus vastly overstating the memory used by our stack.
2012-10-12 10:26:06 -04:00
Ed Morley
8fc88262ba Backout 3044539fec87 (bug 799465),2dbcd6d16b43 (bug 798264), f7019f73a5f0 (bug 711628), a484a3a904da, 7154061ddc00 & 7e7fc42021c1 (bug 799465) for burning 2012-10-12 14:45:38 +01:00
Peter Van der Beken
52e6c5623d Fix for bug 799465 (Add complete support for non-nsISupports objects in new DOM bindings) - fix CC traversal and wrapper preservation. r=bz.
--HG--
extra : rebase_source : 42b0e6db4b418901f253d66e7323ba5a7cd83eea
2012-09-26 20:12:15 +02:00
Nicholas Cameron
404ba9b65d Bug 734668; reviewer's changes. r=Ms2ger,roc
--HG--
rename : content/canvas/src/nsCanvasRenderingContext2DAzure.cpp => content/canvas/src/CanvasRenderingContext2D.cpp
extra : rebase_source : 827a45dd8cc2bdc77e850e8b1d1e23e9f2f72f7d
2012-10-12 22:42:53 +13:00
Nicholas Cameron
80df51e492 Bug 734668; remove canvas quickstubs. r=Ms2ger
--HG--
extra : rebase_source : ceefaf29933c58a0605d60a599fddf31b0c1b229
2012-10-12 22:42:53 +13:00
Ehsan Akhgari
1b602e3962 Backout bug 798510 because of xpcshell orange 2012-10-11 20:17:33 -04:00
Trevor Saunders
3d3592cd63 bug 798595 - remove useless prmem.h includes r=ehsan 2012-10-04 02:14:06 -04:00
Justin Lebar
d90a8e1023 Bug 798510 - Part 1: Use mincore to correctly calculate js::StackSpace::sizeOfCommitted() on *nix. r=luke,njn
Previously, we assumed all memory was committed, thus vastly overstating the memory used by our stack.
2012-10-11 18:55:53 -04:00
Bobby Holley
c30bf840f9 Bug 799348 - When creating a new content window, create the surrounding chrome docshell as system. r=bz 2012-10-11 19:44:20 +02:00
Bobby Holley
0403fed8cc Bug 797204 - Remove API. r=mrbkap
\o/
2012-10-10 11:01:26 +02:00
Bobby Holley
220736fd0b Bug 797204 - Consolidate XBL filename hack logic into nsContentUtils. r=mrbkap
These two functions do the exact same thing, as far as I can tell.
2012-10-10 11:01:26 +02:00
Bobby Holley
055fcd4448 Bug 789224 - Remove chrome check in xpc_EvalInSandbox. r=mrbkap
This function is also called to evaluate javascript:// URIs, at which point the chrome caller assumption isn't actually valid. Let's just do the modern thing here, and fix up the caller that breaks.
2012-10-10 11:01:26 +02:00
foudfou
3a23c1b328 Bug 793433 - Fix crash when nsAppShellService::RegisterTopLevelWindow called with invalid arguments. r=bholley
--HG--
extra : rebase_source : 2f3be0e474c727ea5a58177809bf3af1f34477ec
2012-10-09 11:56:58 +02:00
Ehsan Akhgari
7d0ac4e6bc Bug 799432 - Backout changeset 30ab4e1d4874 and changeset dbcc29e9fcf6 from bug 777292 since they're no longer necessary with bug 795238 2012-10-09 16:01:24 -04:00
Benoit Jacob
966189fec7 Bug 779611 - part 9: port WebGLActiveInfo to WebIDL bindings - r=bz 2012-10-09 14:39:49 -04:00
Chris Peterson
4aecbbb60b Bug 799307 - Remove some XPCDebug.cpp cruft that was obsoleted by bug 787856. r=billm 2012-10-08 17:29:47 -07:00
Bobby Holley
ccb9171060 Bug 786142 - Make sure we have a real WN in MoveWrappers. r=peterv 2012-10-09 17:28:13 +02:00
Gabor Krizsanits
741ac104b0 Bug 684601 - window.toString.call() with native JS Object; r=bz 2012-10-09 17:21:53 +02:00
Nicholas Nethercote
b1fb442071 Bug 799019 - Tweak per-compartment memory reporting. r=Ms2ger.
--HG--
extra : rebase_source : 66bab372c7b3a7f4cebfd059b4c64a7562ba1f5d
2012-10-08 15:20:26 -07:00
Nicholas Nethercote
bc8cd01df6 Bug 799000 - Don't double count when memory-reporting for JSObject2WrappedJSMap. r=terrence.
--HG--
extra : rebase_source : 77553d19751c45e050b5945bb0813dd7155dfea6
2012-10-08 15:20:13 -07:00
Hsin-Yi Tsai
81d7a61b89 Bug 783525 - part 1 - idl and DOM impl for ICCCardLockErrorEvent. r=smaug, sr=sicking 2012-10-03 14:29:07 +08:00
Ed Morley
b9d0962f13 Merge mozilla-central to mozilla-inbound 2012-10-06 21:47:07 +01:00
Ed Morley
5abdf356a2 Merge last PGO-green changeset of mozilla-inbound to mozilla-central 2012-10-06 20:30:35 +01:00
Boris Zbarsky
d1d076b1d3 Bug 796410. Make things still work right if we disable Paris list bindings. r=peterv 2012-10-06 12:21:42 -04:00
Boris Zbarsky
a8b8db0ee0 Bug 798011. Deal with JS_ValueToString failing. r=gabor 2012-10-06 12:06:24 -04:00
Ms2ger
c6c8b09903 Bug 795610 - Part g: Introduce custom quickstubs that call the newly introduced WebIDL APIs; r=mounir 2012-10-06 09:20:56 +02:00
Bobby Holley
54d2fc8eec Bug 761695 - Put Proxy and DOM expandos on the expando object, rather than the holder. r=peterv 2012-10-05 18:59:24 +02:00
Bobby Holley
19863fe088 Bug 761695 - Hoist expando-checking (but not expando-creating) operations into common code. r=peterv
We do this for delete_, enumerateNames, and resolveOwnProperty. This doesn't change
existing behavior, because for ProxyXrayTraits and DOMXrayTraits the expando object
will (currently) always be null.
2012-10-05 18:59:24 +02:00
Bobby Holley
b6b60bd403 Bug 761695 - Create XrayTraits::resolveOwnProperty. r=peterv 2012-10-05 18:59:23 +02:00
Bobby Holley
2f074e80e0 Bug 761695 - Reorder checks for expandos and nodePrincipal. r=peterv
Peter and I decided this was ok. We can't hoist expando stuff otherwise.
2012-10-05 18:59:23 +02:00
Bobby Holley
02fbd34534 Bug 761695 - Implement expando traps for ProxyXrayTraits DOMXrayTraits. r=peterv
For new DOM proxies, we could probably use the Xray expando machinery for the
regular expando object as well, and free up one of the reserved slots. That's
more than I want to bite off for the moment, though.

I also decided not to block on bug 760095 and just kick the problem of globals
with new binding down the road a little bit.
2012-10-05 18:59:23 +02:00
Bobby Holley
513593624e Bug 761695 - Move wrapper preservation stuff into a virtual trap. r=peterv
I'm not sure this stuff is correct for non-WN objects. Hopefully that will
come out in review.

Anyway, with this change, the expando infrastructure in XrayTraits is now
fully generic and non-WN-specific. To make things work for other objects,
we now need to implement the virtual traps and hoist the code that calls the
expando machinery out of XPCWrappedNativeXrayTraits.
2012-10-05 18:59:23 +02:00
Bobby Holley
764ba38fdf Bug 761695 - Make expando chain getting/setting a virtual trap. r=peterv 2012-10-05 18:59:23 +02:00
Bobby Holley
522451000d Bug 761695 - Hoist expando infrastructure into XrayTraits. r=peterv
It's still WN-only, now we can move the WN-only bits into virtual traps.

Note that the new-binding reparenting code will need to have a call to
CloneExpandoChain.
2012-10-05 18:59:23 +02:00
Bobby Holley
2b6769e01a Bug 761695 - Hoist Xray identification machinery into XrayWrapper, and use it for trait identification. r=peterv
We don't currently have a good way of selecting the traits used by a given Xray
wrapper. This lets us do that.

Note: We add a call to js::UnwrapObject to GetXrayType while hoisting it. When
it was used only in WrapperFactory, this was unnecessary, because |obj| was
always unwrapped. But for our new purposes, it might not be. Aside from that,
there are no changes to the function.
2012-10-05 18:59:23 +02:00
Bobby Holley
52b466bd70 Bug 761695 - Move Xray expando infrastructure further down in the file. r=peterv
Just cut/paste. No code changes.
2012-10-05 18:59:23 +02:00
Bobby Holley
f025bdc025 Bug 761695 - Unify holder creation and access. r=peterv
With this patch, all holders are created lazily. There are two common accessors,
getHolder() and ensureHolder(). The former returns null if no holder exists, the
latter lazily creates the holder if it doesn't exist. It does this by calling into
a virtual trap on XrayTraits, which lets the appropriate Xray type do its thing.
2012-10-05 18:59:23 +02:00
Bobby Holley
7ca744b818 Bug 761695 - Get the WN directly from the wrapper. r=peterv
All this indirection was getting seriously mucky. This, incidentally, means that
the XPCWN holder no longer needs a reserved slot pointing to the WN.
2012-10-05 18:59:23 +02:00
Bobby Holley
b250c23a43 Bug 761695 - Hoist call and construct traps into Traits, since the current implementations are XPCWN-specific. r=peterv 2012-10-05 18:59:22 +02:00
Bobby Holley
1a61d79fcf Bug 761695 - Rename getInnerObject to getTargetObject. r=peterv
The current name potentially implies that the object returned is an inner
object in the JS sense, which isn't true. Really we just want the thing
we're Xraying to.
2012-10-05 18:59:22 +02:00
Bobby Holley
c701c6c8c9 Bug 761695 - Hoist getInnerObject into XrayTraits. r=peterv
The only special handling here with wrapped natives is to make sure that we
bypass outer windows. But we can do this with js::UnwrapObject.
2012-10-05 18:59:22 +02:00
Bobby Holley
4d248020dd Bug 761695 - Make Xray traits inherit from a common superclass and give them a singleton instance. r=peterv
There's some code that can be shared between different Xray traits, but can't
(yet) be hoisted into XrayWrapper, because it needs to be callable from outside
XrayWrapper where we don't have the appropriate template parameters. Moreover,
this code benefits from virtual function specialization. The use case here is
illuminated in the next patch.

For the moment, we skip converting the bulk of the traits calls to virtual
methods, because they're working just fine.
2012-10-05 18:59:22 +02:00
Bobby Holley
22cdfb3eb3 Bug 761695 - Stop stashing a raw WN pointer in XPCWN Xray holders. r=peterv
We might as well do this dynamically, which simplifies the code. Note that we
could avoid the reserved slot by parenting the holder to the wrapper. But the
JS parent API is deprecated, and we need to move away from it to reserved slots
anyhow. We might as well start here, with the added advantage that parenting
to the global makes us consistent with the other Xray types.
2012-10-05 18:59:22 +02:00
Bobby Holley
612c502d18 Bug 761695 - Simplify XPCWN Xray holder creation. r=peterv
The major semantic change here is that we parent holders directly to their
global. This should be fine.
2012-10-05 18:59:22 +02:00
Bobby Holley
340b28c0bd Bug 761695 - Fix inaccurate commenting. r=peterv
The .wrappedJSObject property only exists when the Xray wrapper subsumes the wrappee.
2012-10-05 18:59:22 +02:00
Benoit Jacob
7c88e5e534 Bug 779611 - reland parts 5-8 - port WebGLTexture, WebGLBuffer, WebGLFramebuffer, WebGLRenderbuffer, WebGLShader, WebGLProgram to WebIDL bindings - r=bz 2012-10-04 16:35:54 -04:00
Benoit Jacob
3c55b8bae9 back out 6f3714945438, 5732dca84958, bfb93cf89612, e697a832c60b for Mac build error 2012-10-04 15:06:31 -04:00
Benoit Jacob
75765490e7 Bug 779611 - part 8 - port WebGLShader and WebGLProgram to WebIDL bindings - r=bz 2012-10-04 14:45:35 -04:00
Benoit Jacob
3c8b827724 Bug 779611 - part 7 - port WebGLFramebuffer and WebGLRenderbuffer to WebIDL bindings - r=bz 2012-10-04 14:45:33 -04:00
Benoit Jacob
5fed8a3b08 Bug 779611 - part 6 - port WebGLBuffer to WebIDL bindings - r=bz 2012-10-04 14:45:32 -04:00
Benoit Jacob
f0b59e1bef Bug 779611 - part 5 - port WebGLTexture to WebIDL bindings - r=bz 2012-10-04 14:45:25 -04:00
Bobby Holley
65fa4e51c8 Bug 797583 - Remove bogus assertion. r=mrbkap 2012-10-04 11:56:51 +02:00
Gabriele Svelto
f3daa82807 Bug 739780 - Switch Telephony.cpp to use nsTArrayHelpers.h implementation of nsTArrayToJSArray. r=khuey, r=mrbkap 2012-09-28 10:43:49 -07:00
Benoit Jacob
3a142c6980 Bug 779611 - part 3 - port WebGL extensions to WebIDL bindings, refactor them - r=bz,jgilbert 2012-10-03 17:13:05 -04:00
Benoit Jacob
9470b7d5d2 Bug 779611 - part 2 - drop old bindings for WebGLUniformLocation - r=bz 2012-10-03 17:13:05 -04:00
Benoit Jacob
8a7f727099 Bug 779611 - part 1 - port WebGLShaderPrecisionFormat to WebIDL bindings - r=bz 2012-10-03 17:13:05 -04:00
Andrew Quartey
106c5d6f24 Bug 792581 - part 5: Replace LL_CMP macro with standard comparison. r=ehsan 2012-10-03 10:13:19 -04:00
Bobby Holley
e86f6f47ba Bug 795275 - Telemetry. r=mrbkap 2012-10-03 11:44:18 +02:00
Bobby Holley
02d3f31738 Bug 795275 - Warn about content access to |Components|. r=mrbkap 2012-10-03 11:44:18 +02:00
Bobby Holley
5fa99bf185 Bug 795275 - Turn Components into a JS value getter for content scopes. r=mrbkap 2012-10-03 11:44:18 +02:00
Bobby Holley
b9afeeb542 Bug 795275 - Introduce an explicit mechanism for determining if a script is from XBL. r=mrbkap
We want this right now so that we can avoid the scary warning when content Components
access happens in XBL (which we're allowing going forward). This patch would be overkill
just for that, but I also have plans to introduce a SOW-like protection of the Components
wrapper filtering policy. I can't just do the filename hack for that though, because real-
world XBL filenames might be all over the place. So let's just be safe here.
2012-10-03 11:44:18 +02:00
Bobby Holley
5d4e37827c Bug 795275 - Clean up isSystemOnlyAccessPermitted. r=mrbkap
A lot of this stuff can be simplified now, and we can stop using the deprecated APIs.
2012-10-03 11:44:18 +02:00
David Mandelin
d5e3ad15ce Bug 750019: disable optimizations for nsIDOMHTMLDocument_Write on MSVC, r=bz
--HG--
extra : rebase_source : 00230976a1242a20c95dc7e9f841d872114d717a
2012-10-02 12:35:37 -07:00
Masatoshi Kimura
140d294330 Bug 795544 - Make StringEncoding API available from xpcshell/jsm. r=bz 2012-10-02 20:14:38 -04:00
Ms2ger
69bfc49741 Bug 795300 - Remove xpc_GetGlobalForObject; r=bholley 2012-10-02 10:24:11 +02:00
Ms2ger
9728c472c5 Bug 795301 - Demacroize IS_{SLIM,WN}_WRAPPER{,_OBJECT}; r=bholley 2012-10-02 10:24:11 +02:00
Ms2ger
ddc2dbbc65 Bug 793116 - Remove nsISupports argument to xpc_CreateGlobalObject; r=bholley 2012-10-02 10:24:11 +02:00
Ms2ger
ea6699a96d Bug 793482 - Use xpc::GetCompartmentPrivate in a few more places; r=bholley 2012-10-02 10:24:11 +02:00
Ms2ger
82dca59cca Bug 780151 - Part b: Don't hand out ThisTranslators; r=bz 2012-10-02 10:24:08 +02:00
Ms2ger
4bde9a8fcd Bug 780151 - Part a: Remove unused arguments to TranslateThis; r=bz 2012-10-02 10:22:32 +02:00
Ms2ger
052582276b Bug 780146 - Part d: Inline mozilla::dom::binding::DefineConstructor; r=bz 2012-10-02 10:07:36 +02:00
Bobby Holley
4a8ed6d4a9 Bug 794912 - Remove dynamic privilege check in isCrossOriginAccessPermitted. r=mrbkap 2012-10-01 23:13:49 +02:00
Peter Van der Beken
2561b4b1e6 Fix for bug 791774 (Hook DOM lists up to the new DOM bindings). r=bz.
--HG--
extra : rebase_source : 873020edd9cd3defc932d77bd26b5d65ebf263cb
2012-06-13 17:18:30 +02:00
Peter Van der Beken
931a931c83 Fix for bug 791347 (Support non-nsISupports refcounted natives and non-refcounted natives in new DOM bindings). r=bz/smaug.
--HG--
extra : rebase_source : cd6d98461d7fa3a07fa1361b4d840448122b6655
2012-09-19 15:02:37 +02:00
Kyle Huey
6dc54b8e20 Bug 792625: Fix xpcshell to accept non-ASCII command line arguments on Windows. r=bsmedberg 2012-09-30 09:45:05 -07:00
Inder Kumar ext:(%20and%20Mike%20Habicher%20%3Cmhabicher%40mozilla.com%3E)
796bda9b42 Bug 776062: Add support for recording video on gonk. r=cjones,double,ikumar,mikeh sr=sicking 2012-09-28 22:30:52 -07:00
Isaac Aggrey
997db4d142 Bug 791906: Replace NSPR integer limit constants with stdint ones; r=ehsan 2012-09-28 01:57:33 -05:00
Makoto Kato
222556a3d5 Bug 786579 - Remove old MSVC (<=2003) support. r=khuey 2012-09-28 16:02:40 +09:00
Mark Banner
bae8a10dfb Bug 793580 - Part 1: Use unsigned types in ExceptionArgParser::parseResult; r=ehsan
--HG--
extra : rebase_source : 456e3643b4d5cac96d2c6f0435581e9502037c79
2012-09-27 14:19:06 -04:00