Commit graph

100 commits

Author SHA1 Message Date
Nicholas Nethercote
c2306345d5 Bug 1297658 - Avoid unnecessary checking in memory reporters. r=erahm.
This patch removes checking of all the callback calls in memory reporter
CollectReport() functions, because it's not useful.

The patch also does some associated clean-up.

- Replaces some uses of nsIMemoryReporterCallback with the preferred
  nsIHandleReportCallback typedef.

- Replaces aCallback/aCb/aClosure with aHandleRepor/aData for CollectReports()
  parameter names, for consistency.

- Adds MOZ_MUST_USE/[must_use] in a few places in nsIMemoryReporter.idl.

- Uses the MOZ_COLLECT_REPORT macro in all suitable places.

Overall the patch reduces code size by ~300 lines and reduces the size of
libxul by about 37 KiB on my Linux64 builds.

--HG--
extra : rebase_source : e94323614bd10463a0c5134a7276238a7ca1cf23
2016-08-24 15:23:45 +10:00
Honza Bambas
425509d685 Bug 1289164 - Make about:cache not modify cache entry state on display. r=michal
--HG--
extra : rebase_source : b64fbced196064b78e8f6e1be6e566fe5233c8ab
2016-08-09 11:23:00 -04:00
Nicholas Nethercote
e7f10a07fd Bug 1293603 (part 2) - Make Run() declarations consistent. r=erahm.
This patch makes most Run() declarations in subclasses of nsIRunnable have the
same form: |NS_IMETHOD Run() override|.

As a result of these changes, I had to add |override| to a couple of other
functions to satisfy clang's -Winconsistent-missing-override warning.

--HG--
extra : rebase_source : 815d0018b0b13329bb5698c410f500dddcc3ee12
2016-08-08 12:18:10 +10:00
Honza Bambas
601acdd087 Bug 1275898 - Proper about:cache asyncOpen implementation + kill the disk entries loop hard on shutdown, r=michal
MozReview-Commit-ID: 3Tmvy45Iayu

--HG--
extra : histedit_source : 736f2ff12fb097bf2776cc900750010a00c4cf2a
2016-05-31 22:20:17 -07:00
Honza Bambas
6be1404013 Bug 1273875 - On shutdown leak HTTP cache entries memory, r=michal 2016-05-18 06:39:00 +02:00
Honza Bambas
9c4215a1fb Bug 1271701 - Make about:cache channels cancelable. r=michal 2016-05-12 10:19:00 -04:00
Honza Bambas
d9981dcb53 Bug 1271019 - Don't call on nsIURI on non-main threads from HTTP cache back end. r=michal 2016-05-12 06:38:00 -04:00
Kyle Huey
941ab1f522 Bug 1268313: Part 7 - Move NS_NewRunnableMethod and friends to mozilla::NewRunnableMethod. r=froydnj 2016-05-05 01:45:00 -07:00
Carsten "Tomcat" Book
ba3fe0975c Backed out changeset 85ce8cb0639a (bug 1268313)
--HG--
extra : rebase_source : 56d1cf41a2dc4959b67f834e07192a5c772176a8
2016-04-29 14:21:16 +02:00
Kyle Huey
48a594a09e Bug 1268313: Part 7 - Move NS_NewRunnableMethod and friends to mozilla::NewRunnableMethod. r=froydnj 2016-04-28 14:08:25 -07:00
Kyle Huey
c73656947b Bug 1265927: Move nsRunnable to mozilla::Runnable, CancelableRunnable to mozilla::CancelableRunnable. r=froydnj 2016-04-25 17:23:21 -07:00
Nicholas Hurley
fd7a5d97b5 Bug 1016628 - Add prefetch abilities to the predictor. r=mayhemer 2016-04-21 12:32:30 -07:00
Honza Bambas
de75162c69 Bug 1066970 - Show 'calculating' during HTTP cache cleaning process in preferences window, r=michal 2016-04-05 05:59:00 +02:00
J. Ryan Stinnett
2a55d065b7 Bug 1238160 - Rename OriginAttributes.mInBrowser and associated methods. r=bz,mayhemer
This change renames OriginAttributes.mInBrowser to mInIsolatedMozBrowser and
nsIPrincipal::GetIsInBrowserElement to GetIsInIsolatedMozBrowserElement.  Other
methods that pass these values around also have name changes.

Tokens such as "inBrowser" have previously been serialized into cache keys, used
as DB column names, stored in app registries, etc.  No changes are made to any
serialization formats.  Only runtime method and variable names are updated.

No behavior changes are made in this patch, so some renamed methods may have
nonsensical implementations.  These are corrected in subsequent patches
focused on behavior.

MozReview-Commit-ID: 66HfMlsXFLs
2016-03-02 10:35:56 -06:00
Bogdan Postelnicu
3de845aa19 Bug 1251253 - prevent null pointer dereference of |aContext| in CacheStorageService::DoomStorageEntries. r=mayhemer
MozReview-Commit-ID: BmXXg4eW25n

--HG--
extra : rebase_source : 35ca2824ebdd618fef7b6de4858de8214571f466
2016-02-25 20:41:52 +02:00
Honza Bambas
68a7636bf1 Bug 1050613 - Make sure force-valid for HTTP cache entries is removed when entries are removed, r=michal 2016-02-19 11:56:00 +01:00
Honza Bambas
581cd94d0a Bug 1248003 - Purge from HTTP cache memory pool only in reasonable intervals, r=michal 2016-02-15 11:45:00 +01:00
Honza Bambas
a170797259 Bug 1220272 - Fix signalling in HTTP cache test code suspender. r=michal 2016-01-14 11:24:00 +01:00
Chris Peterson
03f5630fd2 Bug 1235298 - Annotate intentional switch fallthroughs to suppress -Wimplicit-fallthrough warnings in netwerk/. r=mcmanus 2015-11-22 21:58:33 -08:00
Nicholas Nethercote
ec89bbf7f2 Bug 1237151 (part 3) - Remove ignored qualifiers in all remaining code. r=froydnj. 2016-01-05 17:08:45 -08:00
Bogdan Postelnicu
b0926d6bae Bug 1230939 - check the return of sGlobalEntryTables->Get(aContextKey, &diskEntries). r=mayhemer 2015-12-07 06:38:00 +01:00
Nicholas Nethercote
abd63ceb7a Bug 1187134 (part 2) - Replace nsBaseHashtable::Enumerate() calls in netwerk/cache{,2}/ with iterators. r=valentin.
--HG--
extra : rebase_source : 1c69a912e8c27cf9789057f0813ec3bbfd30c57c
2015-12-03 13:59:58 -08:00
Nicholas Nethercote
5fd362d4cf Bug 1186783 (part 3) - Replace nsBaseHashtable::EnumerateRead() calls in netwerk/ with iterators. r=valentin. 2015-11-19 16:46:10 -08:00
Nicholas Nethercote
9f8635cffa Bug 1186783 (part 2) - Replace nsBaseHashtable::EnumerateRead() calls in netwerk/ with iterators. r=valentin. 2015-11-19 16:44:24 -08:00
Nicholas Nethercote
7123371a1f Bug 1186783 (part 1) - Replace nsBaseHashtable::EnumerateRead() calls in netwerk/ with iterators. r=valentin. 2015-11-19 15:31:28 -08:00
Honza Bambas
1e445509dc Bug 1206060 - Show pinning status at about:cache. r=michal 2015-10-30 08:12:00 +01:00
Honza Bambas
8f88fd6cdc Bug 1032254 - Generic way to pin reasource in the HTTP cache, r=michal
* * *
Bug NNNNNNN - message, r=reviewer

--HG--
rename : netwerk/test/unit/test_cache2-28-concurrent_read_resumable_entry_size_zero.js => netwerk/test/unit/test_cache2-29a-concurrent_read_resumable_entry_size_zero.js
rename : netwerk/test/unit/test_cache2-29-concurrent_read_non-resumable_entry_size_zero.js => netwerk/test/unit/test_cache2-29b-concurrent_read_non-resumable_entry_size_zero.js
2015-10-22 12:11:00 +02:00
Nathan Froyd
01583602a9 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

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Nikhil Marathe
8dbf443150 Bug 1167809 - Add skip size check flag to cache for use with ServiceWorkers. r=mayhemer
For non-e10s Service Worker, we use Cache entries to achieve interception.
While this is a temporary measure, the fact that cache enforces size limits on
cache entries (which make sense for the purpose it was designed) prevents large
files from being served via a Service Worker. This patch adds a skip size check
flag to CacheStorage that is relayed to CacheEntry and CacheFile. It is set to
false by default leading to normal cache behaviour.
The patch also adds nsICacheStorageService.synthesizedCacheStorage() that
retrieves a cache storage with this flag set to true, which is used by
nsHttpChannel in case of possible interception.
2015-09-03 16:05:42 -07:00
Honza Bambas
5ae69d4a1a Bug 1082735 - Don't use InsertElementSorted in HTTP cache, r=michal 2015-08-17 15:18:59 -07:00
Nicholas Nethercote
d98d14fa1e Bug 1189156 (part 4) - Don't use enumeration style for nsBaseHashtable::SizeOf{In,Ex}cludingThis(). r=erahm,jfkthame.
After this change, we have ShallowSizeOf{In,Ex}cludingThis(), which don't do
anything to measure children. (They can be combined with iteration to measure
children.)

--HG--
extra : rebase_source : f98420176f50990bbc5a25e35788328154cfeb00
2015-07-30 21:19:57 -07:00
Carsten "Tomcat" Book
9fcb673926 Backed out changeset fb2a27db76bc (bug 1032254) for OS X Static Build Bustage on a CLOSED TREE
--HG--
rename : netwerk/test/unit/test_cache2-29a-concurrent_read_resumable_entry_size_zero.js => netwerk/test/unit/test_cache2-28-concurrent_read_resumable_entry_size_zero.js
rename : netwerk/test/unit/test_cache2-29b-concurrent_read_non-resumable_entry_size_zero.js => netwerk/test/unit/test_cache2-29-concurrent_read_non-resumable_entry_size_zero.js
2015-07-31 07:57:50 +02:00
Valentin Gosu
30be843b5b Bug 1032254 - Provide a way to pin resources in the http cache r=honzab
--HG--
rename : netwerk/test/unit/test_cache2-28-concurrent_read_resumable_entry_size_zero.js => netwerk/test/unit/test_cache2-29a-concurrent_read_resumable_entry_size_zero.js
rename : netwerk/test/unit/test_cache2-29-concurrent_read_non-resumable_entry_size_zero.js => netwerk/test/unit/test_cache2-29b-concurrent_read_non-resumable_entry_size_zero.js
2015-07-30 11:40:00 +02:00
Nicholas Nethercote
87b80f8c66 Bug 1188745 - Rename nsTArray::SizeOfExcludingThis() as ShallowSizeOfExcludingThis(). r=froydnj.
This makes it clearer that, unlike how SizeOf*() functions usually work, this
doesn't measure any children hanging off the array.

And do likewise for nsTObserverArray.

--HG--
extra : rebase_source : 6a8c8d8ffb53ad51b5773afea77126cdd767f149
2015-07-28 23:24:24 -07:00
Birunthan Mohanathas
a8939590de 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
David Major
40bbd6a80c Bug 1173860: Null check on sGlobalEntryTables. r=mcmanus 2015-06-17 11:23:43 -04:00
Honza Bambas
326b2476af Bug 1170534 - Remove Visual Event Tracer. r=dougt 2015-06-02 11:44:00 -04:00
Eric Rahm
25a263c237 Bug 1162336 - Part 2: Wrap expensive calls in PR_LOG_TEST. r=froydnj
Check that logging is enabled before performing potentially expensive
operations.
2015-05-07 12:52:45 -07:00
Eric Rahm
58dea0dee9 Bug 1162336 - Part 1: Remove instances of #ifdef PR_LOGGING in netwerk. r=froydnj
PR_LOGGING is now always defined, we can remove #ifdefs checking for it.
2015-05-07 12:52:44 -07:00
Wes Kocher
28c02e1e6d Backed out 2 changesets (bug 1162336) for breaking at least windows builds
Backed out changeset 8952a7fa4050 (bug 1162336)
Backed out changeset 0170a6c2a5be (bug 1162336)
2015-05-07 11:13:24 -07:00
Eric Rahm
b9dd7823ea Bug 1162336 - Part 2: Wrap expensive calls in PR_LOG_TEST. r=froydnj
Check that logging is enabled before performing potentially expensive
operations.
2015-05-07 10:35:29 -07:00
Eric Rahm
ba22eb7fee Bug 1162336 - Part 1: Remove instances of #ifdef PR_LOGGING in netwerk. r=froydnj
PR_LOGGING is now always defined, we can remove #ifdefs checking for it.
2015-05-07 10:35:28 -07:00
Ehsan Akhgari
883849ee32 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
Honza Bambas
f4adbc2b8a Bug 1079789 - Don't doom expired entries in the HTTP cache intermediate memory pool. r=michal
CLOSED TREE
2015-02-12 14:00:00 -05:00
Ehsan Akhgari
e9499ce141 Bug 1117042 - Mark virtual overridden functions as MOZ_OVERRIDE in netwerk; r=mcmanus 2015-01-02 09:04:04 -05:00
Michal Novotny
a35cc357cc Bug 1052266 - Potential deadlock detected: CacheEntry, CacheIndex.mLock, CacheStorageService at CacheEntry, r=honzab 2014-09-10 14:43:50 +02:00
Steve Workman
96f2ba264b Bug 1058099 - Cancel CacheStorageService::mPurgeTimer if it's still set during shutdown r=mayhemer 2014-09-02 13:33:32 -07:00
Ehsan Akhgari
052526d479 Bug 1061052 - Fix more bad implicit constructors in netwerk; r=mcmanus 2014-09-02 09:49:38 -04:00
Michal Novotny
fc093f7b96 Bug 1042192 - Use Cache2 I/O thread for callbacks from CacheFileIOManager, r=sworkman 2014-08-18 15:36:27 +02:00
Valentin Gosu
a94022f8e3 Bug 1045886 - Remove Cache directory from Android profiles r=michal 2014-08-13 16:43:45 +03:00