Commit Graph

672 Commits

Author SHA1 Message Date
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
Jan de Mooij
2c68524128 Bug 837628 - Add baseline JIT browser prefs. r=djvj 2013-02-05 11:11:26 +01:00
L. David Baron
c0b261e3e4 Bug 563195: Fix -Wshadow warnings in public JS API headers (those used from layout/style/). r=njn 2013-02-17 22:56:32 -08:00
Nicholas Nethercote
02a7279b21 Bug 836949 (part 1) - Clean up the versions/options code. r=jorendorff.
--HG--
rename : content/html/content/test/test_meta_attributes_reflection.html => content/html/content/test/test_ol_attributes_reflection.html
extra : rebase_source : 970d8a542bb631ce3f18da26ece69667af29d0a9
2013-02-06 21:35:16 -08:00
Ehsan Akhgari
e087548e06 Bug 853556 - Make nsRootedJSValueArray::SetCapacity return void; r=bzbarsky
--HG--
extra : rebase_source : 04a3f25da7a0f1f1bd773b79c3d620dc8392646f
2013-03-21 14:39:17 -04:00
Dave Hylands
dad5e7b738 Bug 842932 - Update to use Preferences::RegisterCallbackAndCall to correct pref callback from getting wrong params. r=smaug 2013-02-20 11:49:51 -08:00
Bobby Holley
65edc090d7 Bug 834732 - Improve pushing in nsJSEnvironment. r=mrbkap 2013-02-26 11:04:12 -08:00
Bobby Holley
51ba6ef50d Bug 834732 - Make nsCxPusher.Push(JSContext*) infallible. r=mrbkap
We leave the nsIDOMEventTarget* versions fallible for now, but this makes the
common case a lot simpler. Note that this means that pushing a null JSContext,
a bug, is no longer handled at runtime. But I think we should just assert
against it, since there are already callers that don't check the return value.
2013-02-26 11:04:11 -08:00
Bobby Holley
9190ce39d5 Bug 834732 - Remove PushBehavior. r=mrbkap
Now that we only have ALWAYS_PUSH and ASSERT_SCRIPT_CONTEXT, we have uniform
release-mode behavior everywhere. Remove the crap.
2013-02-26 11:04:11 -08:00
Bobby Holley
997dcc7d65 Bug 834732 - Get rid of footgun bool param for nsCxPusher and use an explicit enum. r=mrbkap
The goal here is to get rid of this crap entirely, and make nsCxPusher always
push. But that's a scary change, so we do it in chunks. This patch, in particular,
should have zero behavioral change. This means preserving some very wrong behavior.
For instance, currently SafeAutoJSContext never pushes a damn thing, because the
safe JSContext doesn't have an associated nsIScriptContext. We preserve this
behavior, and in fact convert various similarly-buggy consumers to
SafeAutoJSContext, so that we can hoist the behavioral change into a subsequent
patch.
2013-02-26 11:04:09 -08:00
Luke Wagner
e48f129191 Bug 840282 - OdinMonkey (sr=dmandelin)
--HG--
extra : rebase_source : 4a3869dca32755abb58bbd3d9a06599e61b397f2
2013-03-15 02:29:02 -07:00
Ryan VanderMeulen
1568f7d987 Backed out 12 changesets (bug 834732) for b2g bustage and OSX mochitest-1 crashes on a CLOSED TREE. 2013-02-12 20:54:48 -05:00
Bobby Holley
6d475c3487 Bug 834732 - Improve pushing in nsJSEnvironment. r=mrbkap 2013-02-13 00:22:27 +01:00
Bobby Holley
363a88b529 Bug 834732 - Make nsCxPusher.Push(JSContext*) infallible. r=mrbkap
We leave the nsIDOMEventTarget* versions fallible for now, but this makes the
common case a lot simpler. Note that this means that pushing a null JSContext,
a bug, is no longer handled at runtime. But I think we should just assert
against it, since there are already callers that don't check the return value.
2013-02-13 00:22:26 +01:00
Bobby Holley
70a369794a Bug 834732 - Remove PushBehavior. r=mrbkap
Now that we only have ALWAYS_PUSH and ASSERT_SCRIPT_CONTEXT, we have uniform
release-mode behavior everywhere. Remove the crap.
2013-02-13 00:22:26 +01:00
Bobby Holley
b55e2ecc2b Bug 834732 - Get rid of footgun bool param for nsCxPusher and use an explicit enum. r=mrbkap
The goal here is to get rid of this crap entirely, and make nsCxPusher always
push. But that's a scary change, so we do it in chunks. This patch, in particular,
should have zero behavioral change. This means preserving some very wrong behavior.
For instance, currently SafeAutoJSContext never pushes a damn thing, because the
safe JSContext doesn't have an associated nsIScriptContext. We preserve this
behavior, and in fact convert various similarly-buggy consumers to
SafeAutoJSContext, so that we can hoist the behavioral change into a subsequent
patch.
2013-02-13 00:22:26 +01:00
Gabriele Svelto
dcff369af5 Bug 820438 - Immediately apply changes in maximum script runtime to make them visible in content processes. r=jst 2013-01-31 18:23:50 +01:00
Nicholas Nethercote
524f6ea9b5 Bug 788293 - Remove e4x support. r=jorendorff,terrence,evilpie.
Ding dong!  The witch is dead!
2013-01-24 21:24:57 -08:00
Phil Ringnalda
b4eec14ca3 Back out 66882ea6f8c7 (bug 788293) and 32f09cb3c7b6 (bug 834090) for bustage
CLOSED TREE
2013-01-31 22:29:30 -08:00
Nicholas Nethercote
ae7837bdef Bug 788293 - Remove e4x support. r=jorendorff,terrence,evilpie.
Ding dong!  The witch is dead!

--HG--
extra : rebase_source : 7574f5620e303c25120fcfc8ceb2099ad75c8f1b
2013-01-24 21:24:57 -08:00
Olli Pettay
c77d9c747c Bug 836457 - Don't start forgetSkippable/GC timer before first GC, r=mccr8 2013-01-31 00:46:37 +02:00
Ryan VanderMeulen
dd286ff0cd Merge m-c to inbound. 2013-01-29 10:50:01 -05:00
Boris Zbarsky
948936a2c0 Bug 834785. Make sure to not ask the JS engine for return values in toplevel scripts, so it'll be able to ion-compile them as needed. r=bholley 2013-01-29 08:44:00 -05:00
Olli Pettay
04f89eb353 Bug 835503 - Remove nsCycleCollector::ShouldBeFreed/WasFreed, r=mccr8 2013-01-29 12:45:38 +02:00
Bill McCloskey
0e1f799e7b Bug 751618 - Zone renaming part 7 (r=jonco) 2013-01-27 13:51:41 -08:00
Bill McCloskey
20da154356 Bug 751618 - Zone renaming part 2 (r=jonco) 2013-01-27 13:51:35 -08:00
Bill McCloskey
8544cb4e1d Bug 751618 - Add js/GCAPI.h (r=terrence) 2013-01-27 12:35:12 -08:00
Bobby Holley
800db35b78 Bug 833856 - Handle errors better in EvaluateString. r=bz
This bug happens when we take the !useSandbox path. Basically, when the code
throws, we can end up with garbage in *aRetValue while still returning true
from EvaluateString. It looks like the convention is for these kind of eval
functions to return success even for invalid code, so lets just make sure we
check things a bit better.

This crashtest is kind of half-baked in the sense that it doesn't actually
crash without the rest of the patch. But the testcase here involves a lot of
undefined behavior (what ends up getting left in *aRetValue) during a call
to window.open (which spins the event loop, etc). I already sunk about half
an hour into trying to make it crash, so I'm just going to go with this for
now.
2013-01-25 11:17:40 +01:00
Bobby Holley
cec2ed5339 Bug 832041 - Remove nsJSContext::CompileEventHandler and move consumers to nsJSUtils::CompileFunction. r=bz 2013-01-23 07:12:50 +01:00
Ryan VanderMeulen
e97eef4d6f Merge m-c to inbound. 2013-01-23 18:30:46 -05:00
Olli Pettay
bfbe7518c7 Bug 822849 - Don't run CC/GC timers during shutdown, r=mccr8
--HG--
extra : rebase_source : 173e02106457b6867db8c4cf734a93366f4b31dd
2013-01-22 21:17:48 +02:00
Bobby Holley
464998681a Bug 832435 - Fix compartment handling for EvaluteString and javascript: uris. r=bz 2013-01-21 12:56:28 +01:00
Andrew McCreight
3ebd8b5ab9 Bug 830595 - Add JSAutoCompartment to nsJSContext::ExecuteScript. r=bz 2013-01-22 11:48:46 -08:00
Phil Ringnalda
67c7e25d7b Back out 7dbbb6e3d240 (bug 832435) for assertion failures 2013-01-18 21:29:05 -08:00
Bobby Holley
cf97537345 Bug 832435 - Fix compartment handling for EvaluteString and javascript: uris. r=bzbarsky 2013-01-18 23:33:26 -05:00
Bobby Holley
7a0d54fa07 Bug 824864 - Fix Ms2ger nits. r=me 2013-01-16 18:50:27 -08:00
Bobby Holley
fe9b482b3b Bug 824864 - Pass EvaluateString out-param as a pointer, not a reference. r=bz 2013-01-16 18:50:27 -08:00
Bobby Holley
80fbe9010d Bug 824864 - Move responsibility for checking for JSVERSION_UNKNOWN to the one caller of EvaluateString that might pass it. r=bz 2013-01-16 18:50:26 -08:00
Bobby Holley
b5e0ee1f7c Bug 824864 - Use an nsCxPusher in EvaluateString, and pull the principal off the target object. r=bz
This simplifies a lot of code, and makes the function scope-agnostic.
2013-01-16 18:50:26 -08:00
Bobby Holley
89a6e0fc9e Bug 824864 - Rename EvaluateStringWithValue to EvaluateString. r=bz
Now that there's only one of them, we can get rid of the silly suffix. \o/
2013-01-16 18:50:26 -08:00
Bobby Holley
5dfabb90ca Bug 824864 - Remove unused optional arguments from nsIScriptContext::ExecuteScript. r=bz
This lets us get rid of a bunch of junk.
2013-01-16 18:50:26 -08:00
Bobby Holley
9f95924a28 Bug 824864 - Remove nsIScriptContext::EvaluateString. r=bz 2013-01-16 18:50:26 -08:00
Bobby Holley
1724ed7409 Bug 824864 - Improve the API for EvaluateStringWithValue. r=bz
There are a few changes we make here:
1 - Having callers pass JS::CompileOptions directly.
2 - Removing aUndefined, which makes no sense and is unused by consumers.
3 - Making aScopeObject and aRetValue non-optional, via references.
3 - Adding an argument to optionally coerce the return value to a string.

Coercing jsvals to strings is the reason we currently have two nearly-identical
functions, EvaluateString and EvaluateStringWithValue, since the coercion can
trigger arbitrary script and thus needs to be bracketed by all the junk that
nsJSContext does. However, if callers can be guaranteed that the return value
will be a bonafide string, then they can easily extract the string themselves
if they so desire. This will allow us to combine the two functions.
2013-01-16 18:50:26 -08:00
Bobby Holley
8d5b0ca82e Bug 824864 - Move consumers of CompileFunction to the nsJSUtils version, and kill the nsJSContext version. r=bz
Note that the three consumers were all XBL, and were all passing aShared = true,
which had the effect of passing null for the target object. So we actually want
to pass JS::NullPtr() (the HandleObject version of nullptr) instead of
aClassObject in order to maintain the old behavior (whatever that is).
2013-01-16 18:50:25 -08:00
Bobby Holley
d8ecec9ede Bug 824864 - Hoist the guts of CompileFunction into nsJSUtils. r=bz 2013-01-16 18:50:25 -08:00
Trevor Saunders
9f0ad48b28 bug 822289 - remove NS_IMPL_CYCLE_COLLECTION_CLASS and friends r=mccr8 2013-01-12 07:40:33 -05:00
Ehsan Akhgari
d65042a63e Merge mozilla-central into mozilla-inbound 2013-01-15 09:10:19 -05:00
Olli Pettay
46d4422369 Bug 825544: backout Bug 825544, Bug 825544, Bug 765192 and Bug 808035 to bring back the old .location=val behavior, r=bz 2013-01-15 13:46:35 +02:00
Nicholas Nethercote
dc051e917d Bug 829439 (part 1) - Add MemoryReporterBase class that promotes better encapsulation within nsIMemoryReporter sub-classes. r=jlebar.
--HG--
extra : rebase_source : 53a77ea456f2aedafe05954ceece7e64db743e66
2013-01-14 16:26:47 -08:00
Olli Pettay
724caef0ef Bug 820378 - Try to postpone triggering CC if we're in middle of GC handling, r=mccr8 2013-01-08 13:11:01 +02:00
Ed Morley
4720893d6c Bug 810644 - Fix merge conflict after separate backouts on multiple trees; r=me 2013-01-08 10:13:30 +00:00
Ed Morley
998f574dcd Merge last PGO-green changeset of mozilla-inbound to mozilla-central 2013-01-08 09:26:15 +00:00
Olli Pettay
a0d72846bb Bug 705371 - [CC] don't add JSContexts that have no children to the cycle collector graph, r=mccr8 2013-01-07 19:40:46 +02:00
Boris Zbarsky
89c9379923 Back out bug 810644 for now to fix bug 827035, until we manage to fix bug 765780. r=stuff-is-broken 2013-01-07 10:29:00 -05:00
Boris Zbarsky
b9b639512f Back out bug 810644 for now to fix bug 827035, until we manage to fix bug 765780. r=stuff-is-broken 2013-01-07 10:29:00 -05:00
Nicholas Nethercote
5ee4d74504 Bug 826183 - DMD: clear reportedness data before running memory reporters and dumping. r=jlebar.
--HG--
extra : rebase_source : 3ea1c71eacdee712b2d1739a8e25cbf854ea0424
2013-01-06 13:34:39 -08:00
Boris Zbarsky
4400c50ec5 Bug 810644 part 2. Eliminate the now-unused CallEventHandler. r=smaug, sr=peterv 2013-01-03 14:02:42 -05:00
Ryan VanderMeulen
59841fb747 Merge the last PGO-green inbound changeset to m-c. 2013-01-02 21:02:40 -05:00
Olli Pettay
845ba448f7 Additional patch for Bug 821371 to fix crashes on windows, r=timeless
--HG--
extra : rebase_source : 0addf10c8284e141f1dfa8ae2fac467e5232c4f2
2013-01-02 22:45:36 +02:00
Nicholas Nethercote
acc80a9abd Bug 819819 (part 2) - Remove |name| from NS_MEMORY_REPORTER_MALLOC_SIZEOF_FUN. r=jlebar.
--HG--
rename : dom/tests/mochitest/localstorage/test_localStorageQuotaPrivateBrowsing_perwindowpb.html => dom/tests/mochitest/localstorage/test_localStorageQuotaPrivateBrowsing.html
rename : toolkit/components/places/tests/browser/browser_favicon_privatebrowsing_perwindowpb.js => toolkit/components/places/tests/browser/browser_favicon_privatebrowsing.js
extra : rebase_source : 557cc60522970ce7eea3b006d357284d9b4694c4
2012-12-23 16:59:51 -08:00
Jon Coppeard
b752526987 Bug 849273 - Investigate splitting the js and JS namespaces r=terrence
--HG--
extra : rebase_source : 2b131d0177f02e5f0e89398545481fcacbfde00f
2013-03-19 10:35:41 +00:00
Ed Morley
b2109c458f Backed out changeset c75481a07302 (bug 851611) 2013-03-18 14:10:35 +00:00
Ed Morley
2b1775b4e9 Backed out changeset d195190adc48 (bug 851611)
--HG--
rename : tools/profiler/GeckoProfiler.h => tools/profiler/sampler.h
rename : tools/profiler/GeckoProfilerImpl.h => tools/profiler/sps_sampler.h
2013-03-18 14:10:30 +00:00
Benoit Girard
664cf994b4 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 : 552fe1d3ff61d15b264aaf86f7c8cb4f4eff69d1
2013-03-18 14:41:02 +01:00
Benoit Girard
c4c6a0ddf5 Bug 851611 - Part 2: Update profiler calls. r=jrmuizel
--HG--
extra : rebase_source : 3032aaf7e50cdf9c350da688ec34e50a695fc7ca
2013-03-16 00:47:02 -04:00
Andrew McCreight
23309b60e7 Bug 821371, part 3: Remove bogus asserts. r=bustage 2012-12-31 17:03:54 -05:00
Andrew McCreight
dac46e438c Bug 821371, part 2 - Log time taken for cycle collector prep. r=smaug 2012-12-31 15:55:07 -05:00
Andrew McCreight
21289d5087 Bug 821371, part 1 - Don't finish GC when CCTimerFired calls CycleCollectNow. r=smaug 2012-12-31 15:54:37 -05:00
Nicholas Nethercote
884ca45414 Bug 819819 (part 1) - Remove DMDV. r=khuey.
--HG--
extra : rebase_source : af193a276409e33f0099d256cdfcd0f11917ea25
2012-12-20 23:03:50 -08:00
Bobby Holley
b9b954824f Bug 820666 - Tag XBL script for <field> elements and child scripts. r=jorendorff 2012-12-12 17:09:37 -08:00
Nicholas Nethercote
0d84313efb Bug 717853 - Add a native version of DMD. r=jlebar,glandium.
--HG--
extra : rebase_source : 9b824556591abd63b42aa7ff823e9cd25976c162
2012-12-10 16:05:07 -08:00
Trevor Saunders
4d16e0db71 backout 2bb432c47170 for debug asserts 2012-12-05 04:19:33 -05:00
Trevor Saunders
bd2d1feb84 bug 801466 - part 3 1/2 remove some prmem usage from dom/ and docshell/ r=mounir 2012-12-05 02:55:37 -05:00
Andrew McCreight
bf4449f2b7 Bug 792861 - Make HoldJSObjects/DropJSObjects infallible. r=smaug 2012-11-12 17:15:00 -08:00
Olli Pettay
1e72329799 Bug 811206, Fix JSHolder drop handling, part 3 (fixes), r=mccr8,khuey
--HG--
extra : rebase_source : 7b2726d2aa7f5764a3c4cb750e5a735728069687
2012-11-28 03:37:57 +02:00
Brian Hackett
4e0efb87f1 Add config option for off thread compilation, bug 815199. r=dvander 2012-11-26 16:30:37 -05:00
Benoit Jacob
a1d7e0f511 Bug 807437 - Eliminate redundant Traverse/Unlink CC macros - part 1: automatic changes - r=mccr8 2012-11-15 02:32:40 -05:00
Boris Zbarsky
7399600c6f Bug 779048 part 1. Implement a parent class for C++ reflections of callback functions in WebIDL. r=bholley,smaug 2012-11-09 07:43:57 -08:00
Nicholas Nethercote
bd6c82fd52 Bug 807850 - Add a memory reporter for the nsScriptNameSpaceManager. r=jst.
--HG--
extra : rebase_source : bd6e263678aab5477ba11c70015b1537278914b3
2012-11-04 14:18:44 -08:00
Ms2ger
5ffd0edacd Bug 807410 - Part b: Pass the "GC on destruction" flag to the nsJSContext constructor; r=jst 2012-11-04 09:05:23 +01:00
Ms2ger
ca9e7e960f Bug 807410 - Part a: Pass the global object to the nsJSContext constructor; r=jst 2012-11-04 09:04:04 +01:00
Andrew Quartey
96949afbbf Bug 792581 - part 23: Replace LL_INIT and LL_UDIVMOD macros. r=ehsan 2012-11-01 20:57:25 -04:00
Benoit Girard
535c354737 Bug 807311 - Add a CompileScript profile label. r=ehsan
--HG--
extra : rebase_source : 34ad974b46270487d6ae47c50d63479096413653
2012-11-01 14:50:56 -04:00
Gregor Wagner
94f2e887b4 Bug 800063 - Make GC_ALLOCATION_THRESHOLD dynamic. r=billm 2012-10-26 16:06:19 -07:00
Benjamin Peterson
1adbee29f9 Bug 804404 - Set source hook in XPC initialization. r=bz 2012-10-23 18:09:00 -04:00
Boris Zbarsky
2c0d8809e7 Bug 801712 part 2. Switch ImageData to WebIDL bindings. r=peterv 2012-10-22 13:08:52 -04:00
Bobby Holley
cbd9a55d15 Bug 789224 - Remove miscellaneous UniversalXPConnect checks sprinkled throughout gecko. r=mrbkap 2012-10-22 08:29:55 +02:00
Oonishi Atsushi
4dfc130001 Bug 801357 - Remove Get/SetProcessingScriptTag(). r=smaug 2012-10-19 21:44:13 -04:00
Benjamin Peterson
632234f58e Bug 803358 - Remove JSOPTION_RELIMIT. r=luke 2012-10-18 21:06:42 -04:00
Nicholas Nethercote
b22a1b26a8 Bug 800703 - Rename the existing, Valgrind-based DMD as "DMDV". r=khuey.
--HG--
rename : xpcom/base/dmd.h => tools/dmdv/dmdv.h
2012-10-08 15:31:17 -07:00