Commit Graph

1499 Commits

Author SHA1 Message Date
Jonas Sicking
00c5245c10 Bug 806587: Restore getCodebasePrincipal since extensions use it. r=mounir 2012-10-30 22:24:41 +01:00
Boris Zbarsky
a14a96d2cf Bug 801819. Remove nsIDOMCSS2Properties and the classinfo bits for CSS declarations. r=peterv,dbaron 2012-10-30 17:14:06 -04:00
Terrence Cole
a80f8cc0af 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
cfc92feb20 Bug 804630 - Tests for exposing prototype properties on a derived object. r=mrbkap 2012-10-30 18:29:11 +01:00
Kyle Huey
9a3674d80a 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
4144129728 Backout a145ded68994, e0cf397089ec & 1545e91c658e (bug 798491) for bustage on a CLOSED TREE 2012-10-30 17:02:31 +00:00
Kyle Huey
c52440cc57 Bug 798491: Followup bustage fix. 2012-10-30 08:42:47 -07:00
Kyle Huey
50b5d3f681 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
761b11160f Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
Peter Van der Beken
669602b5e0 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
5dafb39b7f Bug 803068 - Merge DirectWrapper and Wrapper. r=ejpbruel
--HG--
extra : rebase_source : a2b98a9585c6f7761747cfaf55684e6eeed91344
2012-10-29 16:52:53 +01:00
Bobby Holley
b871af67e5 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
9176d2ad9c Bug 797206 - Remove GetPrincipalFromContext. r=bz 2012-10-29 15:55:36 +01:00
Peter Van der Beken
2d58c35ce6 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
c2c9421a38 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
0e30cf87b1 Fix for bug 804732 (Remove mCachedDOMPrototypes). r=bz.
--HG--
extra : rebase_source : dc9ffe5f37dbc0542cbb47384b2d25472c70d801
2012-10-23 22:11:58 +02:00
Nicholas Nethercote
b78a6d0425 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
b602643bc5 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
fe068d7611 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
9c33f3f643 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
443e3884bc Bug 799917 - Backout for various regressions. 2012-10-28 08:49:20 -04:00
Bill McCloskey
a6cd2f8c4f Bug 692267 - Remove jsgc.h from INSTALLED_HEADERS (r=terrence) 2012-10-26 11:17:24 -07:00
Andrew Quartey
3f4e29b9f0 Bug 792581 - part 20: Replace LL_UI2L macro with int64_t cast. r=ehsan 2012-10-25 19:25:57 -04:00
Nikhil Marathe
03b0de5c8a Bug 804174 - Inline CallerHasUniversalXPConnect with IsCallerChrome. r=mccr8 2012-10-25 16:10:53 -07:00
Bobby Holley
11a3279da2 Bug 797821 - Null check to fix intermittent orange. r=me 2012-10-25 18:36:45 +02:00
Ehsan Akhgari
8e702f60c5 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
f3c0ac7a23 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
2afd934910 Bug 797821 - Address Ms2ger's review comments. r=me 2012-10-25 17:01:09 +02:00
Bobby Holley
35f4a1d02f Bug 797821 - Remove the XPConnect Compartment Set. r=mrbkap 2012-10-25 17:01:09 +02:00
Bobby Holley
e5281ffe10 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
fecbbb3ade Bug 797821 - Removed the unused reserved slot for XPConnect globals. r=mrbkap 2012-10-25 17:01:09 +02:00
Bobby Holley
678c7b3e05 Bug 797821 - Remove JSCLASS_XPCONNECT_GLOBAL flag. r=mrbkap 2012-10-25 17:01:09 +02:00
Bobby Holley
2cf0594417 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
5d518d9c54 Bug 797821 - Remove FindInJSObjectScope and friends. r=mrbkap
\o/
2012-10-25 17:01:08 +02:00
Bobby Holley
0cdf333aaa Bug 797821 - Replace usage of XPCWrappedNativeScope::FindInJSObjectScope(ccx, obj) with GetObjectScope(obj). r=mrbkap 2012-10-25 17:01:08 +02:00
Bobby Holley
7ec5eb0580 Bug 797821 - Create XPCWrappedNativeScopes immediately after global creation. r=mrbkap 2012-10-25 17:01:08 +02:00
Bobby Holley
f0c6fb319b 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
c2707a9093 Bug 797821 - Remove unused aNative parameter to XPCWrappedNativeScope creation. r=mrbkap 2012-10-25 17:01:08 +02:00
Bobby Holley
467b5d350e Bug 797821 - Stop storing mScriptObjectPrincipal. r=mrbkap 2012-10-25 17:01:08 +02:00
Bobby Holley
6e408995a1 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
2c3ca83d1f 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
115b01b88b 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
9fa3c57db6 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
c563a12b76 Bug 797821 - Simplify the call signature for XPC::CreateGlobalObject. r=mrbkap 2012-10-25 17:01:07 +02:00
Bobby Holley
64e6dab665 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
669dc56dfe 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
ededf3d730 Bug 801576 - Android bustage fix. r=me 2012-10-24 14:18:39 +02:00
Bobby Holley
5a6219b643 Bug 801576 - Add tests for the same-origin policy. r=mrbkap 2012-10-24 12:04:19 +02:00
Bobby Holley
f2880fe1d1 Bug 801576 - Forbid cross-origin access to the History object. r=mrbkap 2012-10-24 12:04:18 +02:00
Ryan VanderMeulen
72c7e10300 Merge m-c to inbound. 2012-10-23 22:41:34 -04:00
Ryan VanderMeulen
7d0be33071 Merge the last PGO-green inbound changeset to m-c. 2012-10-23 22:28:33 -04:00
Olli Pettay
c370341643 Bug 780770, nsThread::SetMainThreadObserver, r=bz+bholley 2012-10-24 01:26:36 +03:00
Benjamin Peterson
a7f69029d0 Bug 804404 - Set source hook in XPC initialization. r=bz 2012-10-23 18:09:00 -04:00
Chuck Lee
6a13b77a08 Bug 780142 - Rewrite MozWifiConnectionInfoEvent. r=smaug 2012-10-22 18:18:26 +08:00
Chuck Lee
c686d1e157 Bug 780142 - Rewrite WifiStatusChangeEvent. r=smaug 2012-10-22 17:17:18 +08:00
Nick Hurley
3b308213ec Bug 536324 part 3 - Change consumers of nsIChannel. r=sworkman 2012-10-22 10:51:07 -07:00
Andres Hernandez
8fbf84fbd1 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
b598ec354c Bug 801712 part 2. Switch ImageData to WebIDL bindings. r=peterv 2012-10-22 13:08:52 -04:00
Boris Zbarsky
7a7136cc71 Bug 801712 part 1. Add the WebIDL binding API to ImageData. r=peterv 2012-10-22 13:08:52 -04:00
Boris Zbarsky
7b364a60a1 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
10241f928c 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
02f7765031 Bug 789224 - Remove capability manager stuff in nsScriptSecurityManager. r=mrbkap 2012-10-22 08:29:55 +02:00
Peter Van der Beken
052fbed287 Fix for bug 803872 (Remove remaining references to the dom.new_bindings pref). r=Ms2ger. 2012-10-21 13:06:55 +02:00
Ms2ger
bf2b5f9bda Bug 796903 - Part b: Remove classinfo from DOMImplementation; r=bz 2012-10-21 09:38:41 +02:00
Olli Pettay
e2db7fffa5 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
9af14c557f Fix for bug 801083 (Remove old proxy-based list bindings). r=bz. 2012-10-13 14:50:24 +02:00
foudfou
04435bb71f Bug 799537 - Sort xpconnect chrome mochitests in tests/chrome. r=bholley 2012-10-19 23:16:07 +02:00
foudfou
1bf98be1e7 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
2b400bf0e8 Bug 793969 - Define an identity transformation at the Xray layer. r=mrbkap 2012-10-19 21:00:48 +02:00
Isaac Aggrey
f3cb73b9c7 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
e4c543b77c 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
caba3228c3 Bug 798123 - Fix build bustage. r=Waldo
CLOSED TREE
2012-10-18 22:21:38 -04:00
Gabriele Svelto
44557fe8f0 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
18527f9e0b Bug 803358 - Remove JSOPTION_RELIMIT. r=luke 2012-10-18 21:06:42 -04:00
Josh Matthews
622cda9c90 Backed out changeset 12002e126b39 (bug 769298) 2012-10-18 17:27:23 -04:00
Andres Hernandez
a84d1976b8 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
94a49ebb50 Bug 802968 - Fix racy test behavior. r=me DONTBUILD
--HG--
extra : rebase_source : 631b1d7d8efc625725b9a733c8e065030ff795e1
2012-10-18 14:41:13 +02:00
Bill McCloskey
b352722f4b Bug 798678 - Weakmap key preservation test (r=mccr8) 2012-10-17 18:22:54 -07:00
Bill McCloskey
151b2aba2f Bug 798678 - Add weakmap key preservation support to cycle collector (r=mccr8) 2012-10-17 18:22:46 -07:00
Bill McCloskey
aea3aad693 Bug 798678 - Refactor wrapper preservation for weakmaps (r=mccr8) 2012-10-08 18:22:47 -07:00
Bill McCloskey
fadcc33157 Bug 714050 - Add support for optional JS helper threads (r=luke) 2012-10-16 11:57:09 -07:00
Bobby Holley
e799cc3495 Bug 801241 - Properly handle |false| return false from JS_DescribeScriptedCaller. r=bz 2012-10-17 19:44:30 +02:00
Ehsan Akhgari
16f73f960a Merge mozilla-central into mozilla-inbound 2012-10-17 13:03:16 -04:00
bzbarsky@mit.edu
3b30ad1062 Bug 802243 - WrapperCache DOMStringMap, quickstub, r=smaug
--HG--
extra : rebase_source : 3c1bb6ab18692d647461af42e732e5f150ae8500
2012-10-17 04:14:32 +03:00
Bobby Holley
7c0ed6fd80 Bug 792280 - Only censor function.caller for non-same-origin calls. r=luke 2012-10-17 17:56:49 +02:00
Justin Lebar
be2864ee16 Bug 801780 - Part 2: Explicitly call out long strings in about:memory. r=njn 2012-10-17 10:44:31 -04:00
Bobby Holley
889232fd33 Bug 797304 - Replace MoveWrapper nonsense with orphan fixup. r=peterv 2012-10-16 15:07:54 +02:00
Bobby Holley
a3164aaa90 Bug 797304 - Add special handling for nuked parents in orphan fixup. r=peterv 2012-10-16 15:07:54 +02:00
Bobby Holley
1021325c42 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
09d92493b0 Bug 801803: More nsresult as enum class creates warnings r=me 2012-10-16 00:26:51 -04:00
David Zbarsky
691b27fa27 Backout 368cd30cccda for bustage 2012-10-15 23:52:17 -04:00
David Zbarsky
7a57538d03 Bug 801803: More nsresult as enum class creates warnings r=me 2012-10-15 23:37:34 -04:00
Ehsan Akhgari
518619c774 Bug 801346 - Remove s_VOID_id from dombindings.cpp; r=bholley 2012-10-15 09:05:09 -04:00
Peter Van der Beken
b981fdd138 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
aaf30c8f52 Bug 799917 - Make document.characterSet always lowercase; r=bz,f=hsivonen,smontagu 2012-10-14 10:13:19 +02:00
Aryeh Gregor
c24a828b17 Bug 799905 - .URL and .compatMode should be defined on Document, not HTMLDocument; r=bz 2012-10-11 14:48:31 +02:00
Andrew Quartey
3ca8d029a6 Bug 792581 - part 16: Replace LL_L2UI macro with uint32_t cast. r=ehsan 2012-10-12 13:29:11 -04:00
Justin Lebar
a82900f6ee 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
f214df21b4 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
1884e4827d 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
4996f7f194 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
95b7ba0d53 Bug 734668; remove canvas quickstubs. r=Ms2ger
--HG--
extra : rebase_source : ceefaf29933c58a0605d60a599fddf31b0c1b229
2012-10-12 22:42:53 +13:00
Ehsan Akhgari
360f83a99f Backout bug 798510 because of xpcshell orange 2012-10-11 20:17:33 -04:00
Trevor Saunders
000b6e89a1 bug 798595 - remove useless prmem.h includes r=ehsan 2012-10-04 02:14:06 -04:00
Justin Lebar
94115895ce 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
da4fce7951 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
a9295dd2c0 Bug 797204 - Remove API. r=mrbkap
\o/
2012-10-10 11:01:26 +02:00
Bobby Holley
2a4c1de7d5 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
eb1cc5decf 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
f9dda29b0b 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
91f6375b08 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
ee49c790ba Bug 779611 - part 9: port WebGLActiveInfo to WebIDL bindings - r=bz 2012-10-09 14:39:49 -04:00
Chris Peterson
0407a3da60 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
35741f8d98 Bug 786142 - Make sure we have a real WN in MoveWrappers. r=peterv 2012-10-09 17:28:13 +02:00
Gabor Krizsanits
c497e1461d Bug 684601 - window.toString.call() with native JS Object; r=bz 2012-10-09 17:21:53 +02:00
Nicholas Nethercote
9ddf540b9b Bug 799019 - Tweak per-compartment memory reporting. r=Ms2ger.
--HG--
extra : rebase_source : 66bab372c7b3a7f4cebfd059b4c64a7562ba1f5d
2012-10-08 15:20:26 -07:00
Nicholas Nethercote
6ce031f394 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
86b07b748e Bug 783525 - part 1 - idl and DOM impl for ICCCardLockErrorEvent. r=smaug, sr=sicking 2012-10-03 14:29:07 +08:00
Ed Morley
44b97aef8e Merge mozilla-central to mozilla-inbound 2012-10-06 21:47:07 +01:00
Ed Morley
1bcac7940e Merge last PGO-green changeset of mozilla-inbound to mozilla-central 2012-10-06 20:30:35 +01:00
Boris Zbarsky
c3467f2b81 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
1060975a5f Bug 798011. Deal with JS_ValueToString failing. r=gabor 2012-10-06 12:06:24 -04:00
Ms2ger
bbe52187a6 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
3e2bc99f16 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
54f0bae85b 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
da6cbf326f Bug 761695 - Create XrayTraits::resolveOwnProperty. r=peterv 2012-10-05 18:59:23 +02:00
Bobby Holley
c0125cfb00 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
3dee0ce8e2 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
6894d29805 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
e5b93a88c9 Bug 761695 - Make expando chain getting/setting a virtual trap. r=peterv 2012-10-05 18:59:23 +02:00
Bobby Holley
d9be4b7c75 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
9b34e0d88e 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
79702a4c27 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
1a9081b1ce 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
05eeb2aa4e 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
3b46b5fe43 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
655913416f 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
3ae8dedbf2 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
0aab228c02 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
5173bb4550 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
66236ce627 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
54bd828407 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
7240725ea8 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
0d5a123372 back out 6f3714945438, 5732dca84958, bfb93cf89612, e697a832c60b for Mac build error 2012-10-04 15:06:31 -04:00
Benoit Jacob
d0d8da9931 Bug 779611 - part 8 - port WebGLShader and WebGLProgram to WebIDL bindings - r=bz 2012-10-04 14:45:35 -04:00
Benoit Jacob
19d4659685 Bug 779611 - part 7 - port WebGLFramebuffer and WebGLRenderbuffer to WebIDL bindings - r=bz 2012-10-04 14:45:33 -04:00
Benoit Jacob
61562913f0 Bug 779611 - part 6 - port WebGLBuffer to WebIDL bindings - r=bz 2012-10-04 14:45:32 -04:00
Benoit Jacob
15fe2b859a Bug 779611 - part 5 - port WebGLTexture to WebIDL bindings - r=bz 2012-10-04 14:45:25 -04:00
Bobby Holley
4404d1b89f Bug 797583 - Remove bogus assertion. r=mrbkap 2012-10-04 11:56:51 +02:00
Gabriele Svelto
9712d5ba51 Bug 739780 - Switch Telephony.cpp to use nsTArrayHelpers.h implementation of nsTArrayToJSArray. r=khuey, r=mrbkap 2012-09-28 10:43:49 -07:00