Commit Graph

861 Commits

Author SHA1 Message Date
Joshua Cranmer
b511ee58c5 Bug 904985 - Use Char16.h in favor of NS_LL, Part 3: kill NS_LL. r=dbaron
--HG--
extra : rebase_source : bc105a8cbb87cc9b6b2db0734d9841fe599e794b
2013-09-17 22:43:21 -05:00
Olli Pettay
c7708cd597 Bug 915832, don't trigger a new GC if we're in middle of an iGC, r=billm 2013-09-13 02:07:02 +03:00
Brian Hackett
2e644832a0 Bug 906371 - Use off thread JS parsing when loading async scripts, r=bz,billm. 2013-09-11 17:42:09 -06:00
Dan Gohman
8b7074b6dc Bug 910823 - Constify static js::Class/JSClass instances. r=waldo 2013-09-11 05:49:05 -07:00
Kyle Huey
abebd382da Bug 910937: Remove xpc_UnmarkGrayObject and use JSAPI directly. r=mccr8 2013-09-08 20:28:48 -07:00
Ehsan Akhgari
36280b9569 Bug 913531 - Remove the unnecessary #includes from nsIXPConnect.idl; r=bholley 2013-09-06 13:50:24 -04:00
Bobby Holley
8c6eaad72a Bug 899367 - Followup bustage fix for some functions that were renamed out from under me. r=me CLOSED TREE 2013-09-04 14:58:23 -07:00
Bobby Holley
b8f437054d Bug 899367 - Make GetNativeGlobal consumers call GetWindowProxy and rm the former. r=mccr8
Some of the uses of this are a bit nonsensical now, but that's a problem for
another day.
2013-09-04 14:06:57 -07:00
Bobby Holley
401b0ffa0b Bug 899367 - Remove xpc_UnmarkGrayContext. r=mccr8
Default compartment objects are never gray anymore.
2013-09-04 14:06:56 -07:00
Bobby Holley
6d001e824e Bug 899367 - Stop storing the window proxy on the JSContext. r=mccr8
We need to simultaneously report the new Heap Pointer to the cycle collector,
and remove the old machinery for cycle-collecting the default object via the
JSContext.
2013-09-04 14:06:56 -07:00
Bobby Holley
7932b397fb Bug 899367 - Have nsGlobalWindow go through nsJSContext to access the outer. r=mccr8 2013-09-04 14:06:55 -07:00
Bobby Holley
9ed5f11e8d Bug 899367 - Explicitly traverse outer windows, rather than doing it via JSContext iteration. r=mccr8
Note that this machinery will go away in further patches. But we want to be
deliberate about each of these steps.
2013-09-04 14:06:54 -07:00
Bobby Holley
8abcb2d562 Bug 899367 - Explicitly trace outer windows, rather than doing it via JSContext iteration. r=mccr8 2013-09-04 14:06:54 -07:00
Bobby Holley
5cfc3855a5 Bug 899367 - Only use JSOPTION_UNROOTED_GLOBAL for DOM JSContexts. r=mccr8
We don't cycle collect any other kind, so there's no difference between marking
them gray and letting the JS engine mark them black. This also gets rid of that
nasty code which reset the flag, which billm theorizes has to do with faulty
logic in ContextHolder when creating ephemeral sandbox cxes. The assertion in
this patch should catch us if anything goes wrong.
2013-09-04 14:06:54 -07:00
Andrew McCreight
4723c7c5e3 Bug 883920 - use templates for {Hold,Drop}JSObjects. r=peterv 2013-08-16 13:10:17 -07:00
Boris Zbarsky
ec93636aa6 Bug 903419 part 2. Report unhandled rejections in promises. r=smaug,bholley,luke 2013-08-29 00:30:06 -04:00
Boris Zbarsky
7891c84fba Bug 903419 part 1. Change js::GetErrorTypeName to take a JSRuntime, not a JSContext. r=luke 2013-08-29 00:30:06 -04:00
Masatoshi Kimura
1df155c4fd Bug 910291 - Hide TraceMalloc debug functions from content. r=bz 2013-08-29 07:48:43 +09:00
Nicholas Nethercote
3f5d413d90 Bug 909597 (part 2) - Rename jsdbgapi.{h,cpp} as {js,vm}OldDebugAPI.{h,cpp}. r=luke.
--HG--
rename : js/src/jsdbgapi.h => js/public/OldDebugAPI.h
rename : js/src/jsdbgapi.cpp => js/src/vm/OldDebugAPI.cpp
extra : rebase_source : 9cd65a698e726c43d88d650f40823367bf98feae
2013-08-26 19:05:20 -07:00
Ryan VanderMeulen
2f3de4dea0 Backed out 12 changesets (bug 899367) for Windows and OSX mochitest failures on a CLOSED TREE.
Backed out changeset 46cf4c3eb447 (bug 899367)
Backed out changeset d8a876219fc7 (bug 899367)
Backed out changeset d930333f95a7 (bug 899367)
Backed out changeset efae8cc0fff8 (bug 899367)
Backed out changeset 1dd262d146a6 (bug 899367)
Backed out changeset 4c396b8a51d0 (bug 899367)
Backed out changeset c8c30176639a (bug 899367)
Backed out changeset aaa8fbcf9aaf (bug 899367)
Backed out changeset d1a782044a4b (bug 899367)
Backed out changeset b2672ab55046 (bug 899367)
Backed out changeset fc4deb0b06fa (bug 899367)
Backed out changeset b9f1018a609c (bug 899367)
2013-08-27 21:14:54 -04:00
Nicolas Pierron
5779bb4c77 Bug 908903 - Add testing function to toggle jit compiler options. r=jandem 2013-08-27 16:32:04 -07:00
Bobby Holley
6274710e79 Bug 899367 - Make GetNativeGlobal consumers call GetWindowProxy and rm the former. r=mccr8
Some of the uses of this are a bit nonsensical now, but that's a problem for
another day.
2013-08-27 15:21:40 -07:00
Bobby Holley
cff26b12ce Bug 899367 - Remove xpc_UnmarkGrayContext. r=mccr8
Default compartment objects are never gray anymore.
2013-08-27 15:21:39 -07:00
Bobby Holley
05b0b5e0f2 Bug 899367 - Stop storing the window proxy on the JSContext. r=mccr8
We need to simultaneously report the new Heap Pointer to the cycle collector,
and remove the old machinery for cycle-collecting the default object via the
JSContext.
2013-08-27 15:21:39 -07:00
Bobby Holley
5fe7a003d5 Bug 899367 - Have nsGlobalWindow go through nsJSContext to access the outer. r=mccr8 2013-08-27 15:21:39 -07:00
Bobby Holley
c93dc7b4a1 Bug 899367 - Explicitly traverse outer windows, rather than doing it via JSContext iteration. r=mccr8
Note that this machinery will go away in further patches. But we want to be
deliberate about each of these steps.
2013-08-27 15:21:38 -07:00
Bobby Holley
add3235319 Bug 899367 - Explicitly trace outer windows, rather than doing it via JSContext iteration. r=mccr8 2013-08-27 15:21:37 -07:00
Bobby Holley
b7966edcf1 Bug 899367 - Only use JSOPTION_UNROOTED_GLOBAL for DOM JSContexts. r=mccr8
We don't cycle collect any other kind, so there's no difference between marking
them gray and letting the JS engine mark them black. This also gets rid of that
nasty code which reset the flag, which billm theorizes has to do with faulty
logic in ContextHolder when creating ephemeral sandbox cxes. The assertion in
this patch should catch us if anything goes wrong.
2013-08-27 15:21:37 -07:00
Boris Zbarsky
a912d1fc13 Bug 908576 part 3. Get rid of PrototypeIDMap structs. r=smaug 2013-08-23 22:42:41 -04:00
Brian Hackett
930150cc7b Bug 907777 - Add preference for off thread parsing, coalesce with preference for off thread Ion compilation, r=billm. 2013-08-22 07:22:33 -06:00
Ms2ger
87ae95251c Merge PGO-green changeset from inbound to m-c. 2013-08-22 10:31:44 +02:00
Ms2ger
98ef73b248 Bug 906503 - Remove nsIExceptionProvider; r=bholley
It is replaced by a direct special case in the caller.
2013-08-22 08:56:02 +02:00
Olli Pettay
8b41eb2f86 Bug 906269, don't start a GC cycle so likely while we're in middle of a CC cycle, r=mccr8
--HG--
extra : rebase_source : 90d3ad3d19159613f2cb83f0d28dd37a1a429b75
2013-08-22 00:02:12 +03:00
Till Schneidereit
566ad3643e Bug 907201 - Enable activating TI and IonMonkey for chrome scripts via about:config. r=jandem
--HG--
extra : rebase_source : ee45b0108b4516cff12ecc91014cb566d432a4fa
2013-08-20 11:26:44 +02:00
Bobby Holley
fd6d48b51f Bug 901106 - Eliminate the nsJSRuntime namespace. r=mrbkap 2013-08-19 16:24:29 -07:00
Bobby Holley
7c26851804 Bug 901106 - Make nsJSRuntime initialization infallible and do it implicitly in the nsJSContext constructor. r=mrbkap
We also move the runtime out of the namespace, which requires some updates.
2013-08-19 16:24:29 -07:00
Bobby Holley
d192e30f6e Bug 901106 - Get rid of vestigial nsJSRuntime instance and make it a namespace. r=mrbkap
We'll rename the namespace shortly.
2013-08-19 16:24:29 -07:00
Bobby Holley
2eb3fdaa86 Bug 901106 - Make sure sure the nsDOMScriptObjectFactory gets instantiated.
This used to happen implicitly when we created the first nsJSContext, but that
goes away in the next patch. Without this, we get a couple of odd exception-
related failures in the IPC indexedDB tests.
2013-08-19 16:24:28 -07:00
Bobby Holley
684f16b450 Bug 901106 - Remove nsIScriptRuntime. r=mrbkap
All this stuff is now for nsGlobalWindow's use only.
2013-08-19 16:24:28 -07:00
Bobby Holley
ce13d4df7a Bug 901106 - Inline and remove nsIScriptContext::{Serialize,Deserialize}. r=smaug 2013-08-19 16:24:27 -07:00
Tom Schuster
991ead8d61 Bug 884410 - Remove JS_ValueToECMAInt32 and replace it with JS::ToInt32. r=terrence 2013-08-15 17:41:51 -04:00
Ehsan Akhgari
fcb950e309 Backed out changeset 3d9664b78ca7 (bug 884410) because of build bustage on a CLOSED TREE 2013-08-15 18:20:00 -04:00
Tom Schuster
0cd7a5fca0 Bug 884410 - Remove JS_ValueToECMAInt32 and replace it with JS::ToInt32. r=terrence 2013-08-15 17:41:51 -04:00
Ehsan Akhgari
3ec2c9b451 Bug 905353 - Minimize the #includes in dom/base; r=jst
--HG--
extra : rebase_source : e7a1d2262bf6d8c9b78057b8eb6cdbfd98262f68
2013-08-15 14:17:48 -04:00
Jan de Mooij
efb33b1fb3 Bug 905300 - Remove dead code in SpiderMonkey. r=bhackett 2013-08-15 13:45:30 +02:00
Bobby Holley
c695bf8a82 Bug 903212 - Remove explicit compartment GC machinery. r=smaug 2013-08-14 14:00:03 -07:00
Bobby Holley
2ce8f2d13b Bug 903212 - Remove nsIXPCScriptNotify machinery. r=mrbkap 2013-08-14 14:00:03 -07:00
Bobby Holley
ecce09df53 Bug 903212 - Remove ScriptEvaluated, and simplify callers. r=mrbkap 2013-08-14 14:00:03 -07:00
Bobby Holley
7f8ef2275d Bug 903212 - Remove activity tracking from nsJSContext. r=smaug
This only has an impact when we enable explict compartmental GCs, which have
been preffed off for a while.
2013-08-14 14:00:02 -07:00
Bobby Holley
81026a6fdf Bug 901364 - Remove a bunch of now-unused modal state tracking machinery. r=mrbkap 2013-08-12 12:54:51 -07:00
Bobby Holley
e923703302 Bug 901364 - Make operation callbacks runtime-wide. r=mrbkap 2013-08-12 12:54:50 -07:00
Bobby Holley
3e44192004 Bug 901364 - Switch to the XPConnect operation callback for DOM windows. r=mrbkap 2013-08-12 12:54:49 -07:00
Bobby Holley
962b3d3ad7 Bug 901364 - Hoist slow script prompt machinery into nsGlobalWindow. r=mrbkap 2013-08-12 12:54:49 -07:00
Nicholas Nethercote
12393b203a Bug 898263 (part 4) - Move |JSTrapStatus| and related function typedefs out of jsprvtd.h. r=jorendorff.
--HG--
extra : rebase_source : 68c1d3aaaa40763e073ee791c1d0078c5d5cf87e
2013-08-08 21:30:15 -07:00
Bobby Holley
819d50ab77 Bug 901362 - Refactor nsJSUtils::EvaluateString to take an EvaluateOptions structure. r=gabor 2013-08-08 16:51:35 -07:00
Bobby Holley
b5464322cb Bug 901162 - Inline ExecuteScript in the one caller. r=bz 2013-08-08 16:51:34 -07:00
Bobby Holley
4e21a1faaf Bug 901162 - Inline CompileScript into the one caller. r=bz 2013-08-08 16:51:34 -07:00
Bobby Holley
8fbaba72bb Bug 901162 - Hoist EvaluateString into nsJSUtils. r=bz 2013-08-08 16:51:34 -07:00
Bobby Holley
252d99069f Bug 901162 - Remove unused mExecuteDepth machinery. r=bz 2013-08-08 16:51:34 -07:00
Nicholas Nethercote
b756f6b258 Bug 898914 (part 1) - Remove JSBool.
--HG--
extra : rebase_source : 2d202e0e5005a7f54724b1540481c15cde3ad52e
2013-08-08 15:53:04 -07:00
Nicholas Nethercote
25d70fdd97 Bug 902332 - Replace JS_{FALSE,TRUE} with {false,true} almost everywhere. r=luke,bz.
--HG--
extra : rebase_source : 25f4de1bfae830b0af6407d260a70b787ab1dc9b
2013-08-06 23:59:54 -07:00
Nicholas Nethercote
ba723f1034 Bug 901750 - Change return type of |JSNative| from |JSBool| to |bool|. code=nnethercote,jandem. r=luke,bz.
--HG--
extra : rebase_source : 5b3d7cc339af6d93bde078322e25c6e740d1b617
2013-08-02 00:41:57 -07:00
Ms2ger
5c2b63d2c7 Merge m-c to inbound. 2013-08-02 11:07:57 +02:00
Ms2ger
023dc49091 Bug 897945 - Use an XPCOM string for nsContentUtils::ReportToConsole's category argument; r=bholley 2013-08-02 09:09:11 +02:00
Mike Hommey
d01b5df996 Bug 881323 - Re-implement CycleCollectorParticipant with actual vtables, with constexpr to avoid static initializers. r=mccr8 2013-08-02 10:29:05 +09:00
Bill McCloskey
ca26060518 Bug 899812 - Error reporters should consistently report errors to stderr (r=bholley) 2013-07-31 17:04:49 -07:00
Bobby Holley
c00f6379ec Bug 899245 - Rename JS_GetGlobalForScopeChain to JS::CurrentGlobalOrNull. r=luke
This was done with perl/grep.
2013-07-29 16:45:27 -07:00
Bobby Holley
9dbd7cffb9 Bug 899245 - Rename JS_SetGlobalObject and move it into jsfriendapi. r=luke 2013-07-29 16:45:26 -07:00
Bobby Holley
488031ac4d Bug 899245 - Rename js::GetDefaultGlobalForContext to js::DefaultObjectForContextOrNull. r=luke
This is more correct, since the object very often is not a global.
2013-07-29 16:45:25 -07:00
Olli Pettay
676d2b13e5 Bug 897433 - Telemetry for SnowWhite and more async SnowWhite freeing (patch v4), r=mccr8 2013-07-27 13:48:45 +03:00
Ryan VanderMeulen
37205dbd4a Backed out changeset 300f5b7d72e1 (bug 897433) for intermittent Linux dromaeo crashes. 2013-07-25 21:18:20 -04:00
Olli Pettay
0da836185c Bug 897433, Telemetry for SnowWhite and more async SnowWhite freeing, r=mccr8
--HG--
extra : rebase_source : 487139a95f50e69d6273c2870ed6623f175544e7
2013-07-25 22:56:20 +03:00
Bill McCloskey
daca74ad0a Bug 895340 - Fix error reporting of JS exceptions from C++ (r=bholley) 2013-07-23 08:32:36 -07:00
Olli Pettay
5f6b1e810b Bug 895578 - Make SnowWhiteKiller to use fallible TArray, r=mccr8 2013-07-19 15:53:16 +03:00
Bobby Holley
b6dac750a0 Bug 887334 - Miscellaneous JSAutoCompartments. r=luke 2013-07-17 11:53:53 -07:00
Olli Pettay
2bf2214fbe bug 789919, (snow-white) make addref/release of CCable objects faster by removing indirect refcnt increase/decrease, r=mccr8, test changes r=ehsan
--HG--
extra : rebase_source : 2a3b22425c14d6daedc91d62a652c34431acd2fb
2013-07-09 13:30:58 -04:00
Brian Hackett
0db06b2f79 Bug 890636 - Remove JSOPTION_PCCOUNT, r=jandem. 2013-07-08 09:17:35 -06:00
Bobby Holley
6cca462555 Bug 860085 - Stop using XPConnect::ReleaseJSContext in nsJSEnvironment::DestroyJSContext. r=gabor,mccr8
We now have the invariant that any in-use cx must be pushed onto the JSContext
stack with one of our stack-scoped automatic nsCxPusher classes. These classes
hold a strong ref to the nsIScriptContext associated with the JSContext they
push (if any). This means that, if this cx is in use, we will always have at
least one strong reference to the nsJSContext coming from the stack, meaning
that neither the destructor nor the Unlink() implementation will be called.
So we don't need to do any deferred destruction of the cx anymore.
2013-07-03 11:05:19 -06:00
Gregor Wagner
a6bc63ec3b Bug 887125 - Allow 0 for Memory GC Preferences. r=bent 2013-06-27 14:40:17 +08:00
Nicolas B. Pierron
ec97c44287 Bug 829841 - Add an option to enable eager compilation in the browser. r=dvander 2013-06-24 05:13:05 -07:00
Bobby Holley
0f2c2da28a Bug 875790 - Add cx push back into nsJSContext::CompileScript. r=me 2013-06-21 09:10:27 -07:00
Bill McCloskey
4c15cc1f08 Bug 871005 - Add a pref for GC decommit threshold (r=gregor) 2013-06-20 18:06:53 -07:00
Bobby Holley
2fa8b1cfb0 Bug 883450 - Miscellaneous requests. r=gabor 2013-06-20 11:05:34 -07:00
Jon Coppeard
59d5490ab4 Bug 877762 - GC: Post-barrier cycle collector participants - 5 Convert JS::Value to use Heap<T> r=smaug 2013-06-18 11:00:37 +01:00
Benjamin Peterson
ca23ac22c9 Bug 823978 - Rename JSOPTION_STRICT to JSOPTION_EXTRA_WARNINGS. r=Waldo
--HG--
extra : rebase_source : 34f95fc6017d3f3f4f091083debacbd466b51bf6
2013-06-11 12:49:11 -07:00
Ryan VanderMeulen
23aa576486 Backed out changeset 1df122edcf0d (bug 823978) for bustage (again).
CLOSED TREE (again)
2013-06-11 15:27:46 -04:00
Benjamin Peterson
1871556ad9 Bug 823978 - Rename JSOPTION_STRICT to JSOPTION_EXTRA_WARNINGS. r=Waldo
--HG--
extra : rebase_source : 1396c8ec5bd99ab35343cfff2b87d22955671243
2013-06-11 11:30:18 -07:00
Ryan VanderMeulen
9855cde4ef Backed out changeset 7e69e102a432 (bug 823978) for bustage.
CLOSED TREE
2013-06-11 14:28:17 -04:00
Benjamin Peterson
e459c55070 Bug 823978 - Rename JSOPTION_STRICT to JSOPTION_EXTRA_WARNINGS. r=Waldo
--HG--
extra : rebase_source : f5c0e9c743dadb0431eacef6b46b6e274264d3aa
2013-06-11 10:55:21 -07:00
Boris Zbarsky
e1d7ebf663 Bug 876805. Fix unsafe reference gc hazards in dom/ code. r=smaug 2013-05-29 16:16:04 -04:00
Phil Ringnalda
0f6261fe2e Merge the last PGO-green cset on m-i to m-c 2013-05-27 09:44:40 -07:00
octoploid@yandex.com
ee81a84ae6 Bug 875790 - Revert AutoPushJSContext change in nsJSContext::CompileScript due to crashes. r=bholley 2013-05-27 06:40:37 -07:00
Jon Coppeard
8a68ce4b84 Bug 874691 - Make CC participant tracing indirect r=mccr8 r=smaug r=bz 2013-05-27 12:50:49 +01:00
Bobby Holley
d1daeb827a Bug 868110 - Introduce a more private API for the consumers that really do need the default compartment object. r=luke
The primary consumer of this is the whole inner/outer DOM window setup, which
uses the default global to track the current inner. But there are few other
random ones as well.

We use this as an opportunity to convert a bunch of consumers from the two-step
GetNativeContext() -> JS_GetGlobalObject() into just |GetNativeGlobal()|. This
will make things much easier to convert when we start tracking the current inner
explicitly.
2013-05-22 15:42:44 -06:00
Bobby Holley
91448a9dac Bug 868130 - Remove the lion's share of JSAutoRequests in gecko. r=gabor
There are still a handful that either are used with other runtimes, or that
happen very early/late in cx the lifetime of various things where it doesn't
necessarily make sense to have a cx on the stack. This should definitely ensure
that we're not doing double-duty with the nsCxPusher change, though.
2013-05-22 10:05:28 -06:00
Bobby Holley
54ef3d2952 Bug 868130 - Include nsCxPusher.h everywhere we need it, and stop including it from nsContentUtils.h. r=gabor 2013-05-22 10:05:26 -06:00
Bobby Holley
3df3babf7b Bug 868130 - Make sure mContext is stack-top in the various places where nsJSEnvironment uses it. r=gabor
I also replaced some uses of mJSContext with AutoJSContext upon auditing that
they're only ever called by other nsJSContext functions that just pushed. This
makes the code much easier to audit because we know that we're just inheriting
the caller's cx (which is stack-top) rather than injecting a potentially-
unrelated cx.
2013-05-22 10:05:24 -06:00
Bobby Holley
fffaff5b13 Bug 868130 - Make sure mContext is stack-top in nsJSContext::CompileScript. r=gabor 2013-05-22 10:05:23 -06:00
Jan de Mooij
d1d46a2f99 Bug 857845 part 3 - Remove JM JSAPI flags, memory reporters and browser prefs. r=djvj
--HG--
extra : rebase_source : 8b2ed85801fcd8c8fd0fc16a89b1a275add1a310
2013-05-22 14:50:45 +02:00
Bobby Holley
1e852f571d Bug 841312 - Remove the termination function API. r=bz
\o/
2013-05-21 11:45:56 -06:00
Bobby Holley
e00d8aa943 Bug 860941 - Separate the handling of |dialogArguments| and |arguments|, and use IDL for the |dialogArguments| getter. r=jst
This patch is bigger than I'd like it to be, but there are a lot of interlocked
dependencies and I eventually decided it was easier to just lump it together.

The semantics of |showModalDialog|/|window.dialogArguments| (an web-exposed
HTML5 feature) and |openDialog|/|window.arguments| (a XUL-proprietary feature)
are quite different. The former is essentially a security-checked JSVal, while
the latter gets converted into an array. We handled them together in the old
world, which led to a lot of confusion and muddled semantics. This patch
separates them.

This patch also eschews the roundabout resolve hook for dialogArguments in favor
of returning them directly from the XPIDL getter. This better matches the
behavior in the spec, especially because it allows dialogArguments to live on
the outer as they're supposed to, rather than the first inner that happens to
end up in the docshell. All in all, this should make this all very
straightforward to convert WebIDL when the time comes.

The current spec on the origin checks here is pretty fictional, so I've filed
https://www.w3.org/Bugs/Public/show_bug.cgi?id=21932 to fix it. This patch
should more or less preserve the current security behavior.
2013-05-17 10:43:19 -07:00
Andrew McCreight
b13ef63428 Bug 865320 - Move the logic for deciding when to doing a merging CC into the cycle collector. r=smaug 2013-04-29 16:41:41 -07:00
Ed Morley
dbd106a2c5 Backed out changeset 0ad1a92ca568 (bug 860941) 2013-05-17 09:08:44 +01:00
Bobby Holley
983ad0969a Bug 860941 - Separate the handling of |dialogArguments| and |arguments|, and use IDL for the |dialogArguments| getter. r=jst
This patch is bigger than I'd like it to be, but there are a lot of interlocked
dependencies and I eventually decided it was easier to just lump it together.

The semantics of |showModalDialog|/|window.dialogArguments| (an web-exposed
HTML5 feature) and |openDialog|/|window.arguments| (a XUL-proprietary feature)
are quite different. The former is essentially a security-checked JSVal, while
the latter gets converted into an array. We handled them together in the old
world, which led to a lot of confusion and muddled semantics. This patch
separates them.

This patch also eschews the roundabout resolve hook for dialogArguments in favor
of returning them directly from the XPIDL getter. This better matches the
behavior in the spec, especially because it allows dialogArguments to live on
the outer as they're supposed to, rather than the first inner that happens to
end up in the docshell. All in all, this should make this all very
straightforward to convert WebIDL when the time comes.

The current spec on the origin checks here is pretty fictional, so I've filed
https://www.w3.org/Bugs/Public/show_bug.cgi?id=21932 to fix it. This patch
should more or less preserve the current security behavior.
2013-05-16 23:33:14 -07:00
David Zbarsky
4cf96f4173 Bug 868312 - Rooting fixes for dom r=bz 2013-05-12 01:17:42 -04:00
David Zbarsky
ae680f2b5f Bug 868312 - Rooting fixes for dom r=bz 2013-05-10 14:22:21 -04:00
David Zbarsky
7921fbf41a Bug 868312: Root dom/workers r=bz 2013-05-09 03:27:40 -04:00
Bobby Holley
2e95fb1c15 Bug 868635 - Make merging CC heuristics go through scx. r=mccr8 2013-05-07 14:18:03 -07:00
Luke Wagner
0adc1f4120 Bug 868184 - OdinMonkey: enable by default on beta/release (r=vlad)
--HG--
extra : rebase_source : c97bf37723eded74f95aae21e2baa692cf059c2e
2013-05-07 13:34:17 -07:00
Bobby Holley
5b4a6b5b06 Bug 868122 - Remove nsIScriptContextPrincipal. r=gabor
\o/
2013-05-06 16:53:10 -07:00
David Zbarsky
c239a75547 Bug 866450 Part 7: Root some additional JS::Values found during review r=bz 2013-05-02 05:12:47 -04:00
David Zbarsky
3650bf50d2 Bug 866450 Part 3: Fix rooting hazards under content/ and dom/ r=bz 2013-05-02 05:12:46 -04:00
David Zbarsky
e6b1eb46b4 Bug 866450 Part 2: Fix rooting hazards under content/ and dom/ r=bz 2013-05-02 05:12:46 -04:00
Ed Morley
dfe0338333 Backed out changeset b514d768d793 (bug 866450) 2013-05-02 11:57:14 +01:00
Ed Morley
149a757e2f Backed out changeset 6e6a175fc36a (bug 866450) 2013-05-02 11:57:10 +01:00
Ed Morley
5cfaa67828 Backed out changeset e0b51717bb64 (bug 866450) 2013-05-02 11:56:57 +01:00
David Zbarsky
2e0cd0171f Bug 866450 Part 7: Root some additional JS::Values found during review r=bz 2013-05-02 05:12:47 -04:00
David Zbarsky
b410d41cc0 Bug 866450 Part 3: Fix rooting hazards under content/ and dom/ r=bz 2013-05-02 05:12:46 -04:00
David Zbarsky
bc9b1bccdc Bug 866450 Part 2: Fix rooting hazards under content/ and dom/ r=bz 2013-05-02 05:12:46 -04:00
Bobby Holley
8490fc8be1 Bug 865729 - Remove nsIJSContextStack from dom/foo. r=gabor 2013-04-29 11:16:18 -07:00
Andreas Gal
943c3039a9 Bug 862970 - Don't lock images on the active page on B2G. r=jlebar,joe 2013-04-25 18:36:53 -07:00
Aryeh Gregor
659b807986 Bug 859817 - Remove implicit conversions from raw pointer to already_AddRefed; r=Ms2ger 2013-04-22 14:15:59 +03:00
Boris Zbarsky
9c1973b5d2 Bug 864727 part 5. Make all the WrapObject methods take a handle for the scope object. r=ms2ger 2013-04-25 12:29:54 -04:00
David Zbarsky
82391d9a22 Bug 861729 - Remove nsPIDOMWindow::GetExtantDocument r=Ms2ger 2013-04-24 00:22:37 -04:00
Xin Zhang
5d0104d77b Bug 857385 - Make various JSFunctionSpec arrays const. r=waldo
--HG--
extra : rebase_source : 24141998ffad3b0e6bad98b6fc0ce3754e448d5b
2013-04-22 14:15:49 -07:00
Jose Cortes
5a8bc5381c Bug 842186 - Replace use of jsval with JS::Value in dom/base. r=jwalden
From 1a684ed61615d32965201e55335478d5f403ac4a Mon Sep 17 00:00:00 2001
 cpp files in the dom/base/ directory. r=jwalden
---
 dom/base/Crypto.cpp                     |  3 +-
 dom/base/DOMRequest.cpp                 | 12 +++---
 dom/base/DOMRequest.h                   |  4 +-
 dom/base/Navigator.cpp                  | 10 ++---
 dom/base/nsDOMJSUtils.h                 |  6 +--
 dom/base/nsDOMWindowUtils.cpp           | 20 ++++-----
 dom/base/nsGlobalWindow.cpp             | 24 +++++------
 dom/base/nsIJSNativeInitializer.h       |  4 +-
 dom/base/nsJSEnvironment.cpp            | 73 +++++++++++++++++----------------
 dom/base/nsJSEnvironment.h              |  8 ++--
 dom/base/nsJSTimeoutHandler.cpp         |  4 +-
 dom/base/nsJSUtils.h                    |  2 +-
 dom/base/nsStructuredCloneContainer.cpp | 10 ++---
 13 files changed, 91 insertions(+), 89 deletions(-)

--HG--
extra : rebase_source : af1420550a745aba9fd6c20297ac3cd0075f5ead
2013-04-11 18:52:10 -04:00
Boris Zbarsky
d2beaf77f2 Bug 810644 part 2. Eliminate the now-unused CallEventHandler. r=smaug, sr=peterv 2013-01-03 14:02:42 -05:00
Steve Fink
17f9d9e469 Bug 789593 - Clone typed arrays by cloning their buffers and only saving construction parameters. r=jorendorff, bent
Also enters a compartment where needed, and bumps both the structured clone and IndexedDB schema versions
2013-02-22 13:43:28 -08:00
Jan de Mooij
78245a3e52 Merge from mozilla-central. 2013-03-26 10:57:26 +01:00
Jan de Mooij
c99782e8ff Merge from mozilla-inbound.
--HG--
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFEConvolveMatrixElement.cpp
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFEConvolveMatrixElement.h
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFEDiffuseLightingElement.cpp
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFEDiffuseLightingElement.h
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFEDisplacementMapElement.cpp
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFEDisplacementMapElement.h
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFEOffsetElement.cpp
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFEOffsetElement.h
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFESpecularLightingElement.cpp
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFESpecularLightingElement.h
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFESpotLightElement.cpp
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFESpotLightElement.h
2013-03-25 10:27:13 +01:00
Jan de Mooij
39b2173b9d Merge from mozilla-central. 2013-03-22 10:39:40 +01:00
Jan de Mooij
a9086aedc6 Merge from mozilla-central.
--HG--
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFEColorMatrixElement.cpp
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFEColorMatrixElement.h
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFECompositeElement.cpp
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFECompositeElement.h
2013-03-20 12:54:47 +01:00
Terrence Cole
5f4e4d162b Bug 850293 - Remove nsScriptObjectHolder; r=mccr8,bholly sr=smaug
nsScriptObjectHolder is not needed with either conservative or exact rooting.
2013-03-20 13:09:09 -07:00
Jan de Mooij
6317f934e9 Merge from mozilla-central.
--HG--
rename : content/svg/content/src/SVGFEPointLightElement.cpp => content/svg/content/src/SVGFEComponentTransferElement.cpp
rename : content/svg/content/src/SVGFEPointLightElement.cpp => content/svg/content/src/SVGFEComponentTransferElement.h
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFEDistantLightElement.cpp
rename : content/svg/content/src/nsSVGFilters.cpp => content/svg/content/src/SVGFEDistantLightElement.h
2013-03-18 16:53:57 +01:00
Bill McCloskey
a3cea08b3a Bug 759585 - Zones (r=jonco,bhackett,njn,dvander,luke,bz,mccr8,bholley) 2013-03-16 20:36:37 -07:00
Benoit Girard
fc10a7cfe4 Bug 851611 - Part 3: Rename headers. r=jrmuizel
--HG--
rename : tools/profiler/sampler.h => tools/profiler/GeckoProfiler.h
rename : tools/profiler/sps_sampler.h => tools/profiler/GeckoProfilerImpl.h
extra : rebase_source : 6ea7c660764a4390cdd8dd91561fff1d7bad6035
2013-03-18 15:25:50 +01:00
Benoit Girard
9d12529d78 Bug 851611 - Part 2: Update profiler calls. r=jrmuizel
--HG--
extra : rebase_source : f76accc3d3dd86c75cb3e9750734f23ec9c29941
2013-03-16 00:47:02 -04:00
Jan de Mooij
8ff567ce1a Merge from mozilla-central. 2013-03-08 09:57:47 +01:00
Terrence Cole
dac56af76e Bug 851568 - Remove HoldScriptObject and DropScriptObject; r=smaug
--HG--
extra : rebase_source : d5bb9bff3dcdb8ceaf8ecb3ea60c96f75e0bc82a
2013-03-19 10:20:22 -07:00
Jan de Mooij
9194960d3a Merge from mozilla-central. 2013-02-27 17:25:37 +01:00
Jan de Mooij
9b0dba0d47 Merge from mozilla-central. 2013-02-21 15:56:12 +01:00
Jan de Mooij
927a48de58 Merge from mozilla-central. 2013-02-19 11:34:59 +01:00
Jan de Mooij
2b94a948b6 Merge from mozilla-central. 2013-02-14 12:24:36 +01:00
Olli Pettay
25044dfc64 Bug 844313 - Call GC more likely when there are lots of Events to collect, r=mccr8
--HG--
extra : rebase_source : 675ad0e5b5e22b3ccc1ec2bddac7048df57f522a
2013-03-07 20:53:19 +02:00
Jon Coppeard
8d5fd16382 Bug 848395 - GC: Move Rooted to JS namespace - rename js::Rooted to JS::Rooted outside SpiderMonkey r=terrence
--HG--
extra : rebase_source : 35cbf3cc4da4598c2e9e6975028ef397718849db
2013-03-06 16:41:43 +00:00
Ed Morley
fe417ad697 Backed out changeset 28ef4bdff455 (bug 848395) 2013-03-07 13:03:35 +00:00
Jan de Mooij
1fcc5e9edd Merge from mozilla-inbound. 2013-02-12 16:37:37 +01:00
Jon Coppeard
fa71007e65 Bug 848395 - GC: Move Rooted to JS namespace - rename js::Rooted to JS::Rooted outside SpiderMonkey r=terrence
--HG--
extra : rebase_source : 866879df05e3ec3f8e93570eb3f6b71103636b41
2013-03-06 16:41:43 +00:00
Jan de Mooij
863df22c17 Merge from mozilla-inbound. 2013-02-08 09:20:14 +01:00
Jeff Walden
0e302a5094 Bug 826009 - Move locale callback info, default locale, etc. data and APIs to be JSRuntime-centered. f=bholley, r=jorendorff
--HG--
extra : rebase_source : 35317f4c29e9dd70e7d4fd1292027cfd51ce2675
2013-02-07 18:04:11 -08:00