Commit Graph

239 Commits

Author SHA1 Message Date
Peter Van der Beken
ea980a3526 Bug 1146316 - Leak fix, set up CC in XPCShell too. r=smaug.
XPCShell allows interaction with object that are cycle collected, but we never run the
cycle collector in it. In XPCShell we don't call nsJSContext::EnsureStatics.
nsJSContext::EnsureStatics is responsible for setting DOMGCSliceCallback as a GC callback,
which we need for running the cycle collector.
2018-05-08 17:07:33 +02:00
Boris Zbarsky
d80780910d Bug 1442360 part 3. Remove nsScriptNamespaceManager, since now it's all dead code. r=peterv
MozReview-Commit-ID: DHRz2frjmT5
2018-03-21 23:18:51 -04:00
Jon Coppeard
6d2c84aa7b Bug 1441988 - Simplify AutoVector definitions by making this a template r=sfink 2018-03-01 14:47:29 +00:00
Olli Pettay
8cae9c47d0 Bug 1377131 - Try to trigger collector slices at times which disturb page js less (at least with iframes loaded after the top level page has been loaded), r=mccr8,bz
When triggering an iframe load or starting to parse a document for an iframe, the main thread may often have some time before the new page has been created. Try to trigger CC/GC slice at such point in order to avoid collector later when page is already executing its JS
2017-09-06 18:18:11 +01:00
Andrew McCreight
7c01f523e8 Bug 1018394 - Remove unused functionality to do extra forget skippable calls before a CC. r=smaug
We never actually use this, and it causes assertions with fuzzing, so
just delete it.

MozReview-Commit-ID: 595M09mD0K2
2017-07-03 12:53:54 -07:00
Bill McCloskey
ce42826bdf Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Carsten "Tomcat" Book
238bf154d5 Backed out changeset 4f6302a98ae4 (bug 1372405) 2017-06-21 13:59:26 +02:00
Bill McCloskey
67e8af4720 Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-20 21:44:11 -07:00
Carsten "Tomcat" Book
bbe9441993 Backed out changeset 9846de3bd954 (bug 1372405) 2017-06-20 08:27:02 +02:00
Bill McCloskey
f69608368b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-19 22:25:47 -07:00
Olli Pettay
c08aeee071 Bug 1367905 - Try to run GC/CC slices, including forgetSkippable, during idle time, r=mccr8 2017-06-10 02:38:50 +03:00
Wes Kocher
d94d0e78b3 Backed out 2 changesets (bug 1367905) for a spike in Windows reftest failures a=backout
Backed out changeset c5aaa3f7b79e (bug 1367905)
Backed out changeset 1c66da2b1e88 (bug 1367905)

MozReview-Commit-ID: IX632WoWHrO
2017-06-08 16:09:28 -07:00
Olli Pettay
01a6a06f80 Bug 1367905 - Try to run GC/CC slices, including forgetSkippable, during idle time, r=mccr8 2017-06-07 23:46:31 +03:00
Carsten "Tomcat" Book
4960a7d0ca Backed out changeset ff33e6c6f6a5 (bug 1367905) for memory leaks 2017-06-07 15:13:37 +02:00
Olli Pettay
e0c64e438d Bug 1367905 - Try to run GC/CC slices, including forgetSkippable, during idle time, r=mccr8 2017-06-06 20:41:34 +03:00
a4d85ed9fb Bug 1110928, part 4 - Try to pass a relevant zone to PokeGC. r=smaug 2017-01-23 19:22:26 +02:00
Jon Coppeard
863d796e4b Bug 1297558 - Remove explicit calls to Expose*ToActiveJS r=mccr8 2016-10-18 17:58:19 +01:00
Terrence Cole
f1d44424d3 Bug 1245316 - Use Rooted<GCVector> to implement AutoVector; r=sfink 2016-09-22 17:01:38 -07:00
Terrence Cole
1a00fe7507 Bug 1251463 - Remove ShrinkGCBuffers; r=jonco,r=mccr8 2016-02-25 15:52:59 -08:00
Boris Zbarsky
bc375ece53 Bug 1276276 part 6. Get rid of nsJSContext::mContext. r=smaug 2016-06-02 10:34:40 -04:00
Boris Zbarsky
348edefc4b Bug 1276276 part 4. Eliminate the specialness of nsJSContext::GetCCRefcnt, since we're never using its mContext for anything now. r=peterv 2016-06-02 10:34:40 -04:00
Boris Zbarsky
162370f033 Bug 1276276 part 3. Eliminate nsIScriptContext::GetNativeContext. r=smaug 2016-06-02 10:34:39 -04:00
Boris Zbarsky
1d2ee53764 Bug 1276317 part 3. Move handling of the mem log prefs from being per-nsJSContext to just happening once in nsJSContext::EnsureStatics. r=peterv 2016-06-02 10:34:39 -04:00
Kyle Huey
a9cf047227 Bug 1265927: Move nsRunnable to mozilla::Runnable, CancelableRunnable to mozilla::CancelableRunnable. r=froydnj 2016-04-25 17:23:21 -07:00
Kyle Huey
e95edb30a9 Bug 1241764: Replace nsPIDOMWindow with nsPIDOMWindowInner/Outer. r=mrbkap,smaug 2016-01-30 09:05:36 -08:00
Nathan Froyd
4e6d8f6705 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-18 01:24:48 -04:00
Andrea Marchesini
ed56afbfd5 Bug 1214300 - AsyncErrorReporter doesn't use JSRuntime param., r=smaug 2015-10-14 11:29:55 +01:00
Andrea Marchesini
369572f0d9 Bug 1203916 - Get rid of NS_DOMReadStructuredClone and NS_DOMWriteStructuredClone, r=smaug 2015-09-15 01:05:44 +08:00
Birunthan Mohanathas
a29151dc87 Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Andrew McCreight
92010d3e4c Bug 1152551, part 2 - Fix mode lines in dom/. r=jst 2015-05-03 15:32:37 -04:00
Jon Coppeard
14cc27d4be Bug 1159714 - Templatise AutoVectorRooter implementation r=terrence 2015-05-01 16:26:10 +01:00
Boris Zbarsky
0a010b1519 Bug 1155946 part 2. Add mayResolve methods to DOM classes with resolve hooks. r=peterv 2015-04-28 12:25:55 -04:00
Andrea Marchesini
26e004fd3c Bug 1156632 - Remove unused forward class declarations - patch 1 - dom/base, r=ehsan 2015-04-22 08:29:15 +02:00
Ehsan Akhgari
ea41d8de48 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Jon Coppeard
531afdc2a7 Bug 1130439 - Trigger compacting GCs after the user becomes inactive r=smaug r=terrence 2015-02-24 09:40:02 +00:00
Ryan VanderMeulen
4ddf80a635 Backed out changeset cd6461410a7a (bug 1130439) for frequent SM test timeouts/failures.
CLOSED TREE
2015-02-24 15:11:08 -05:00
Jon Coppeard
6b9a6cb5e0 Bug 1130439 - Trigger compacting GCs after the user becomes inactive r=smaug r=terrence 2015-02-24 09:40:02 +00:00
Trevor Saunders
7377058964 bug 1122254 - use MOZ_OVERRIDE more in dom/ r=bz 2015-01-19 17:41:13 -05:00
Andrew McCreight
0c3e04b6eb Bug 1111076 - Get rid of nsIScriptContext::GC(). r=smaug 2014-12-16 08:02:27 -08:00
Olli Pettay
ee9a672f0e Bug 1105089, try to have shorter ICC slices during animations, r=mccr8 2014-11-27 13:47:51 +02:00
Terrence Cole
2dfebc0b44 Bug 1099287 - Remove the unused nsJSContext::ReportPendingException; r=bholley 2014-11-14 14:58:58 -08:00
Olli Pettay
4fe9222b04 Bug 1097302, increase the number of major forget skippables, r=mccr8 2014-11-12 21:33:50 +02:00
Bobby Holley
f9ea2b62db Bug 1062077 - Merge NS_ScriptErrorReporter and xpc::SystemErrorReporter. r=bz
We keep the latter name because it's referenced in more places. Error reporters
will go away entirely in bug 981187.
2014-09-08 16:30:11 -07:00
Bobby Holley
ef0ac34143 Bug 1062077 - Hoist console logging duties into xpc::ErrorReport. r=bz 2014-09-08 16:30:11 -07:00
Bobby Holley
860f513268 Bug 1062077 - Introduce xpc::ErrorReport. r=bz
I've got it! Let's just wrap the JS thing in an XPCOM thing that duplicates
its fields with a different ownership model! We totally need another one of
those, right? And we could even stick it in XPConnect! </sarcasm>

In seriousness - the code to own, format, and display error reports is
currently spread between the JS engine, JSErrorReporters, an async Runnable
abstraction, and elsewhere. We need to condense it somewhere to start chipping
away at this mess.
2014-09-08 16:30:10 -07:00
Benoit Jacob
7bbd89e2ca Bug 1028588 - Fix dangerous public destructors in the rest of dom/ - r=ehsan 2014-06-23 15:56:07 -04:00
Andrew McCreight
3c68135906 Bug 1019101 - Add a way to get the max CC pause during a given period of time. r=smaug 2014-06-14 16:43:45 -07:00
Ms2ger
dbc2e6334c Bug 1018103 - Remove support for the "JavaScript-global-static-nameset" category; r=bholley
The only in-tree consumer was removed in bug 1012320; the addons MXR and a web
search suggest that it is unused outside the tree as well.
2014-06-06 10:06:26 +02:00
Ms2ger
90d014dbb6 Bug 1007243 - Remove nsJSContext::GarbageCollectNow's unused IsCompartment argument; r=bholley
It has been unused since changeset 82f8c3925056 in bug 903212.
2014-05-20 21:50:59 +02:00
Andrew McCreight
00f806be55 Bug 958353, part 3 - Finish any IGC in progress when manually triggering an ICC slice. r=smaug 2014-05-13 11:58:39 -07:00