Граф коммитов

393 Коммитов

Автор SHA1 Сообщение Дата
Boris Zbarsky 37bab0bd83 Bug 1582196 part 4. Get rid of NS_ERROR_RANGE_ERR. r=peterv
The two remaining consumers don't seem to depend on actually using this
specific nsresult in any way.

Differential Revision: https://phabricator.services.mozilla.com/D46462

--HG--
extra : moz-landing-system : lando
2019-09-23 19:14:33 +00:00
Jan Varga a62bad18a1 Bug 1570644 - Part 1: Fix a regression caused by bug 1556812; r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D42464

--HG--
extra : rebase_source : 104e5782a7e94a16f2d7fd95e20684fbf8d0387e
2019-08-19 10:24:39 +02:00
Nicholas Nethercote b634df9005 Bug 1573720 - Convert dom.storage.default.quota to a static pref. r=mccr8
This one was VarCached to two different variables in two different modules.

Differential Revision: https://phabricator.services.mozilla.com/D41920

--HG--
extra : moz-landing-system : lando
2019-08-15 05:31:38 +00:00
Tom Schuster 88855a7ee5 Bug 1558915 - Use infallible nsIURI::SchemeIs in dom/. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D40108

--HG--
extra : source : 3da6e9e86be4a4a9eeaceec222398475b6679193
2019-08-02 08:54:18 +00:00
Mihai Alexandru Michis 0cc257addd Backed out 2 changesets (bug 1558915) for causing bustages. CLOSED TREE
Backed out changeset e44c9fd81e5b (bug 1558915)
Backed out changeset 3da6e9e86be4 (bug 1558915)
2019-08-02 12:17:42 +03:00
Tom Schuster f115dd9113 Bug 1558915 - Use infallible nsIURI::SchemeIs in dom/. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D40108

--HG--
extra : moz-landing-system : lando
2019-08-02 08:54:18 +00:00
Barret Rennie 2b6653fdbe Bug 1289211 - Rename InfallibleTArray to nsTArray in dom/storage/ r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D36949

--HG--
extra : moz-landing-system : lando
2019-07-10 03:27:55 +00:00
Jonathan Kingston 31441f82ea Bug 1560455 - rename CodebasePrincipal to ContentPrincipal. r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D35504

--HG--
extra : moz-landing-system : lando
2019-07-08 16:37:45 +00:00
Ehsan Akhgari 0e9483343e Bug 1556812 - Only notify same-origin actors in LocalStorageCacheParent::RecvNotify(); r=baku
Differential Revision: https://phabricator.services.mozilla.com/D33867

--HG--
extra : moz-landing-system : lando
2019-06-07 15:09:21 +00:00
Narcis Beleuzu 3c50127358 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-06-05 00:51:07 +03:00
Narcis Beleuzu 790ffc99ca Merge inbound to mozilla-central. a=merge 2019-06-05 00:43:34 +03:00
Nihanth Subramanya 203396c6e0 Bug 1555562 - Make sure LocalStorageManager::PrecacheStorage() passes in the real storage principal. r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D33559

--HG--
extra : moz-landing-system : lando
2019-06-04 21:13:40 +00:00
Ehsan Akhgari b79f2aaa94 Bug 1556859 - Remove SessionStorage::Clone(); r=baku
Differential Revision: https://phabricator.services.mozilla.com/D33703

--HG--
extra : moz-landing-system : lando
2019-06-04 21:09:03 +00:00
Ehsan Akhgari 8349684af8 Bug 1556093 - Use the storage principal when constructing a PBackgroundLocalStorageCache actor; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D33557

--HG--
extra : moz-landing-system : lando
2019-06-04 17:02:21 +00:00
Jan Varga 67c1136dd9 Bug 1556217 - LSNG: Add a test for large items; r=asuth, smaug
Differential Revision: https://phabricator.services.mozilla.com/D33417
2019-06-02 08:00:25 +02:00
Ehsan Akhgari 98809ae136 Bug 1555564 - Part 3: Make sure local storage manager caches the partitioned origins separately from each other; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D33118

--HG--
extra : moz-landing-system : lando
2019-05-30 12:09:42 +00:00
Ehsan Akhgari 98960a9c41 Bug 1554361 - Move the high-level storage access check APIs to mozilla/StorageAccess.h; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D32556

--HG--
extra : moz-landing-system : lando
2019-05-27 14:06:49 +00:00
Sylvestre Ledru d57d4905f1 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D30883

--HG--
extra : moz-landing-system : lando
2019-05-25 17:46:15 +00:00
arthur.iakab af8e458c5f Backed out changeset a296439a25ff (bug 1519636) for frequent Windows cppunit failures CLOSED TREE 2019-05-24 14:26:01 +03:00
Sylvestre Ledru c82ea97226 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D30883

--HG--
extra : moz-landing-system : lando
2019-05-24 09:59:17 +00:00
Andrea Marchesini dc7545548e Bug 1551055 - StoragePrincipal should be supported by localStorage - part 1, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D30801

--HG--
extra : moz-landing-system : lando
2019-05-14 05:49:46 +00:00
Ciure Andrei f1dd75ca22 Backed out 3 changesets (bug 1551055) for causing xpcshell localStorage perma failures CLOSED TREE
Backed out changeset 21e44ad9c6df (bug 1551055)
Backed out changeset 8727e61ab69b (bug 1551055)
Backed out changeset d99a6769beb4 (bug 1551055)

--HG--
extra : rebase_source : 56f7fe5c54cd7e4109acce5074be1aba12e91086
2019-05-13 22:40:22 +03:00
Andrea Marchesini e1b74991fb Bug 1551055 - StoragePrincipal should be supported by localStorage - part 1, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D30801

--HG--
extra : moz-landing-system : lando
2019-05-13 18:42:36 +00:00
Andrea Marchesini d179c5015e Bug 1320404 - Remove appId from origin attributes - part 2 - NO_APP_ID UNKNOWN_APP_ID, r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D29354

--HG--
extra : moz-landing-system : lando
2019-05-03 17:13:47 +00:00
Andrea Marchesini f8565bf748 Bug 1320404 - Remove appId from origin attributes - part 1 - OriginAttributes and nsIPrincipal, r=Ehsan,flod
Differential Revision: https://phabricator.services.mozilla.com/D29353

--HG--
extra : moz-landing-system : lando
2019-05-03 17:13:17 +00:00
Bogdan Tara 386d23bfe7 Backed out 4 changesets (bug 1320404) for test_permmanager_load_invalid_entries.js failures
Backed out changeset 7c2f4e64d38e (bug 1320404)
Backed out changeset a7e7c0251179 (bug 1320404)
Backed out changeset dd741b25a244 (bug 1320404)
Backed out changeset de9073c57d20 (bug 1320404)
2019-05-03 06:12:25 +03:00
Andrea Marchesini fad9354e10 Bug 1320404 - Remove appId from origin attributes - part 2 - NO_APP_ID UNKNOWN_APP_ID, r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D29354

--HG--
extra : moz-landing-system : lando
2019-05-02 17:24:53 +00:00
Andrea Marchesini 138cee6dea Bug 1320404 - Remove appId from origin attributes - part 1 - OriginAttributes and nsIPrincipal, r=Ehsan,flod
Differential Revision: https://phabricator.services.mozilla.com/D29353

--HG--
extra : moz-landing-system : lando
2019-05-02 17:24:51 +00:00
Cosmin Sabou a884fb99d8 Backed out 4 changesets (bug 1320404) for xperf failures on permissions.sqlite-journal.
Backed out changeset fbacf18b6532 (bug 1320404)
Backed out changeset fed7c475d75c (bug 1320404)
Backed out changeset 557b586f774a (bug 1320404)
Backed out changeset 5a20b5f43280 (bug 1320404)
2019-05-02 04:51:18 +03:00
Andrea Marchesini 36718d66c8 Bug 1320404 - Remove appId from origin attributes - part 2 - NO_APP_ID UNKNOWN_APP_ID, r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D29354

--HG--
extra : moz-landing-system : lando
2019-05-01 23:21:54 +00:00
Andrea Marchesini 7e61125d8f Bug 1320404 - Remove appId from origin attributes - part 1 - OriginAttributes and nsIPrincipal, r=Ehsan,flod
Differential Revision: https://phabricator.services.mozilla.com/D29353

--HG--
extra : moz-landing-system : lando
2019-05-01 23:21:45 +00:00
Jan Varga 77fcbc5f34 Bug 1533651 - Don't check result of PSessionStorageObserverChild::SendDeleteMe; r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D24878
2019-03-26 12:51:12 +01:00
Andrea Marchesini dc74d3e7a0 Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 3 - LocalStorage and SessionStorage, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D18951

--HG--
extra : moz-landing-system : lando
2019-03-08 09:00:46 +00:00
Jan Varga 62cb092a89 Bug 1526615 - Part 2: Implement GenerateOriginKey2 which can be used on any thread; r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D19283
2019-02-10 10:20:12 +01:00
Dorel Luca ac34e1d973 Backed out 16 changesets (bug 1525245) for Android failures. CLOSED TREE
Backed out changeset 9f8a1b410320 (bug 1525245)
Backed out changeset 0ef284a9a1d5 (bug 1525245)
Backed out changeset 835e5f642a03 (bug 1525245)
Backed out changeset 362f5a8d033c (bug 1525245)
Backed out changeset 9da3ab33cf67 (bug 1525245)
Backed out changeset 6aacd2d6e835 (bug 1525245)
Backed out changeset 8ff9e8f45e02 (bug 1525245)
Backed out changeset 2020227181cc (bug 1525245)
Backed out changeset fc3c64c330b9 (bug 1525245)
Backed out changeset 2762bf88e050 (bug 1525245)
Backed out changeset ffc10fdc50a6 (bug 1525245)
Backed out changeset bb6ade1207d7 (bug 1525245)
Backed out changeset 1875eb5085e4 (bug 1525245)
Backed out changeset 7e4f67a6d6f1 (bug 1525245)
Backed out changeset e671fc9581eb (bug 1525245)
Backed out changeset b89f5def8d0d (bug 1525245)
2019-03-06 21:07:49 +02:00
Andrea Marchesini 4762f2ad6c Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 3 - LocalStorage and SessionStorage, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D18951

--HG--
extra : moz-landing-system : lando
2019-03-06 17:00:54 +00:00
Ryan Hunt 00e98538aa Bug 1523969 part 6 - Move method definition inline comments to new line in 'dom/'. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D21106

--HG--
extra : rebase_source : ea3f51c2c11247114deccbc86e90fb02b8a97257
2019-02-25 16:05:29 -06:00
Masatoshi Kimura e25fbce870 Bug 1528651 - Re-enable warnings-as-errors on Windows in some directories. r=dmajor
--HG--
extra : source : ba86ea25070b37f4725834e1c2d9ec4c0783e119
2019-02-17 15:03:02 +09:00
Jan Varga d0270542f0 Bug 1525291 - LSNG: Chrome observer notifications for session storage are not distributed to content processes; r=asuth,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D18809
2019-02-06 06:09:57 +01:00
Oana Pop Rus f9cf535efc Backed out changeset 04eecadabb48 (bug 1525291) for build bustages at build/src/obj-firefox/ipc/ipdl/PSessionStorageObserverChild.cpp on a CLOSED TREE 2019-02-07 11:33:00 +02:00
Jan Varga 93f5a88427 Bug 1525291 - LSNG: Chrome observer notifications for session storage are not distributed to content processes; r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D18809
2019-02-06 06:09:57 +01:00
Andrea Marchesini c433a88518 Bug 1515665 - SessionStorage should be allowed when StorageAccess is ePartitionedOrDeny, r=ehsan 2019-01-23 19:19:20 +01:00
Johann Hofmann ee15b3664f Bug 1483440 - Part 1 - Remove purge-domain-data, add purge-sessionStorage notification. r=baku
The browser:purge-domain-data notification had two different intentions,
- to clear session store information and
- to clear all localStorage and sessionStorage
Firing the notification accomplished both at the same time, which from a
user perspective is of course totally not understandable. This commit
removes purge-domain-data in favor of the two distinct purge-localStorage and
purge-sessionStorage events. This gives callers more granular choice on
what they want to clear.

Differential Revision: https://phabricator.services.mozilla.com/D16460

--HG--
extra : moz-landing-system : lando
2019-01-17 17:40:35 +00:00
Andrea Marchesini d0c04ed6ee Bug 1516023 - Remove LocalStorage::mPrincipal because unused, r=asuth 2019-01-04 00:12:22 +01:00
Margareta Eliza Balazs d5a7e1c3a5 Backed out changeset 338f4fbbfddf (bug 1515665) for bc failures browser/components/sessionstore/test/browser_339445.js CLOSED TREE 2018-12-21 18:29:48 +02:00
Ehsan Akhgari 0439cf3142 Bug 1515665 - Ensure that DOM Storage checks the content blocking allow list when performing storage access checks; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D15110

--HG--
extra : moz-landing-system : lando
2018-12-21 11:53:03 +00:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Andrew Sutherland 6c6e230a77 Bug 1286798 - Part 53: Review code comments; r=janv,mrbkap,mccr8 2018-11-05 14:04:39 -05:00
Jan Varga ec6ab2e194 Bug 1286798 - Part 35: Implement database shadowing; r=asuth,janv
This adds synchronization to the global database used by previous local storage implementation.

This patch was enhanced by asuth to bind attached database path.
Places has shown that argument binding is necessary.  (Profiles may include usernames in their path which can have cool emoji and such.)
2018-11-29 21:49:07 +01:00
Jan Varga d87888fe25 Bug 1286798 - Part 31: Support for lazy loading of items; r=asuth,mrbkap,mccr8
There's now an upper limit for snapshot prefilling. The value is configurable and is currently set to 4096 bytes.
Snapshots can operate in multiple modes depending on if all items have been loaded or all keys have been received. This should provide the best performance for each specific state.
This patch also adds support for creating explicit snapshots which can be used for testing.
2018-11-29 21:48:54 +01:00
Jan Varga 0649224345 Bug 1286798 - Part 26: Implement a lazy data migration from old webappsstore.sqlite; r=asuth,janv
This patch was enhanced by asuth to bind attached database path.
Places has shown that argument binding is necessary.  (Profiles may include usernames in their path which can have cool emoji and such.)
2018-11-29 21:48:38 +01:00
Jan Varga 6e40a9dccb Bug 1286798 - Part 22: Add support for preloading of datastores; r=asuth
Datastores are preloaded only for content principals. The preloading is triggered as soon as possible to lower the chance of blocking the main thread in content process. If there is no physical database on disk for given origin, datastore is not created. Preloaded datastores are kept alive for 20 seconds.
2018-11-29 21:48:25 +01:00
Jan Varga 81c542fbe6 Bug 1286798 - Part 19: Implement a helper method for datastore preloading verification; r=asuth
A new type of request is introduced, PBackgroundLSSimpleRequest. This protocol is much simpler than PBackgroundLSRequest which needs to be cancelable.
2018-11-29 21:48:15 +01:00
Jan Varga b968ceb813 Bug 1286798 - Part 18: Verify that data is persisted on disk; r=asuth,mrbkap
New methods open() and close() are added to the Storage WebIDL interface. They are only available when a pref is set and are only intended for testing. There's also a new method resetStoragesForPrincipal() which is used as a callback for close() since datastores don't release directory locks immediately. resetStoragesForPrincipal() requests an exclusive lock for given origin, so it must wait for any exising shared locks to be released.
2018-11-29 21:48:11 +01:00
Jan Varga 9bbba97e91 Bug 1286798 - Part 11: Enable tests for session only mode (but only for the old local storage implementation); r=asuth
An attribute for checking if the next gen local storage implementation is enabled is exposed via a new interface nsILocalStorageManager which should be used for any other local storage specific stuff.
2018-11-29 21:47:48 +01:00
Jan Varga 9f71846e2a Bug 1286798 - Part 4: Basic integration with QuotaManager; r=asuth
This adds a new quota client implementation, but only implements ShutdownWorkThreads.
At shutdown we wait for all running operations to finish including database actors which are closed by using an extra IPC message which avoids races between the parent and child.
Databases are dropped on the child side as soon as they are not used (e.g. after unlinking by the cycle collector).
2018-11-29 21:47:24 +01:00
Jan Varga 60831f2e38 Bug 1286798 - Part 3: New basic (memory only) implementation of LocalStorage; r=asuth,mccr8
The implementation is based on a cache (datastore) living in the parent process and sync IPC calls initiated from content processes.
IPC communication is done using per principal/origin database actors which connect to the datastore.
The synchronous blocking of the main thread is done by creating a nested event target and spinning the event loop.
2018-11-29 21:47:20 +01:00
Gabriele Svelto 19e52bebd4 Bug 1510582 - Remove useless inclusions of Services.h r=erahm
Differential Revision: https://phabricator.services.mozilla.com/D13240

--HG--
extra : moz-landing-system : lando
2018-11-28 17:25:23 +00:00
Gabriele Svelto 566f669d07 Bug 1509450 - Remove unnecessary inclusions of ContentParent.h and ContentChild.h r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D12728

--HG--
extra : moz-landing-system : lando
2018-11-26 14:49:44 +00:00
Andrea Marchesini 375ae1c863 Bug 1505212 - Partitioned localStorage for 3rd party tracker pages, r=ehsan, r=asuth
LocalStorage needs to be exposed in every context except for sandboxes and
NullPrincipals (data: URLs, for instance). But we need to keep data
separate in some scenarios: private-browsing and trackers.
In private-browsing, LocalStorage keeps data in memory, and it shares
StorageEvents just with other origins in the same private-browsing
environment.
For Trackers, we expose a partitioned LocalStorage, which doesn't share
data with other contexts, and it's just in memory. Partitioned localStorage
is available only for trackers listed in the
privacy.restrict3rdpartystorage.partitionedHosts pref. See
nsContentUtils::IsURIInPrefList to know the syntax for the pref value.
2018-11-13 09:51:14 +01:00
Gerald Squelart 1d2a9c227e Bug 1503468 - Add more AUTO_PROFILER_THREAD_SLEEP's - r=mstange
These are around wait functions that already had an IDLE marker.

Differential Revision: https://phabricator.services.mozilla.com/D10671

--HG--
extra : moz-landing-system : lando
2018-11-02 16:26:50 +00:00
Gabriele Svelto 266ef73c96 Bug 1503207 - Remove nsWeakPtr.h and cleanup all files including weak reference-related headers r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D10251

--HG--
extra : moz-landing-system : lando
2018-10-31 20:39:03 +00:00
Kris Maglione 74481e8af4 Bug 1479035: Part 1 - Don't create event queues for stub nsThread wrappers. r=froydnj
Most of the times when we automatically create nsThread wrappers for threads
that don't already have them, we don't actually need the event targets, since
those threads don't run XPCOM event loops. Aside from wasting memory, actually
creating these event loops can lead to leaks if a thread tries to dispatch a
runnable to the queue which creates a reference cycle with the thread.

Not creating the event queues for threads that don't actually need them helps
avoid those foot guns, and also makes it easier to figure out which treads
actually run XPCOM event loops.

MozReview-Commit-ID: Arck4VQqdne

--HG--
extra : source : a03a61d6d724503c3b7c5e31fe32ced1f5d1c219
extra : intermediate-source : 5152af6ab3e399216ef6db8f060c257b2ffbd330
extra : histedit_source : ef06000344416e0919f536d5720fa979d2d29c66%2C4671676b613dc3e3ec762edf5d72a2ffbe6fca3f
2018-07-27 15:13:12 -07:00
Narcis Beleuzu 72f96acd7b Backed out 2 changesets (bug 1479035) for assertion failure: mEvents. CLOSED TREE
Backed out changeset 89a0c0874d40 (bug 1479035)
Backed out changeset 5152af6ab3e3 (bug 1479035)
2018-09-26 23:40:13 +03:00
Kris Maglione 81eb50cf31 Bug 1479035: Part 1 - Don't create event queues for stub nsThread wrappers. r=froydnj
Most of the times when we automatically create nsThread wrappers for threads
that don't already have them, we don't actually need the event targets, since
those threads don't run XPCOM event loops. Aside from wasting memory, actually
creating these event loops can lead to leaks if a thread tries to dispatch a
runnable to the queue which creates a reference cycle with the thread.

Not creating the event queues for threads that don't actually need them helps
avoid those foot guns, and also makes it easier to figure out which treads
actually run XPCOM event loops.

MozReview-Commit-ID: Arck4VQqdne

--HG--
extra : rebase_source : fcf8fa50e748c4b54c3bb1997575d9ffd4cbaae1
extra : source : a03a61d6d724503c3b7c5e31fe32ced1f5d1c219
2018-07-27 15:13:12 -07:00
Noemi Erli 36cc0e5fa7 Backed out 2 changesets (bug 1479035) for build bustages bustages netwerk/cache2/target on CLOSED TREE
Backed out changeset 5f8706213610 (bug 1479035)
Backed out changeset a03a61d6d724 (bug 1479035)
2018-09-26 08:54:03 +03:00
Kris Maglione a6edc4f204 Bug 1479035: Part 1 - Don't create event queues for stub nsThread wrappers. r=froydnj
Most of the times when we automatically create nsThread wrappers for threads
that don't already have them, we don't actually need the event targets, since
those threads don't run XPCOM event loops. Aside from wasting memory, actually
creating these event loops can lead to leaks if a thread tries to dispatch a
runnable to the queue which creates a reference cycle with the thread.

Not creating the event queues for threads that don't actually need them helps
avoid those foot guns, and also makes it easier to figure out which treads
actually run XPCOM event loops.

MozReview-Commit-ID: Arck4VQqdne

--HG--
extra : rebase_source : 02c5572b92ee48c11697d90941336e10c03d49cf
2018-07-27 15:13:12 -07:00
Markus Stange dc48424e7f Bug 1493275 - Annotate idle stacks in the StorageDB thread. r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D6533

--HG--
extra : moz-landing-system : lando
2018-09-24 17:33:46 +00:00
Nathan Froyd e7b3b3140d Bug 1415980 - make hash keys movable and not copyable; r=erahm
Everything that goes in a PLDHashtable (and its derivatives, like
nsTHashtable) needs to inherit from PLDHashEntryHdr. But through a lack
of enforcement, copy constructors for these derived classes didn't
explicitly invoke the copy constructor for PLDHashEntryHdr (and the
compiler didn't invoke the copy constructor for us). Instead,
PLDHashTable explicitly copied around the bits that the copy constructor
would have.

The current setup has two problems:

1) Derived classes should be using move construction, not copy
   construction, since anything that's shuffling hash table keys/entries
   around will be using move construction.

2) Derived classes should take responsibility for transferring bits of
   superclass state around, and not rely on something else to handle that.

The second point is not a huge problem for PLDHashTable (PLDHashTable
only has to copy PLDHashEntryHdr's bits in a single place), but future
hash table implementations that might move entries around more
aggressively would have to insert compensation code all over the
place. Additionally, if moving entries is implemented via memcpy (which
is quite common), PLDHashTable copying around bits *again* is
inefficient.

Let's fix all these problems in one go, by:

1) Explicitly declaring the set of constructors that PLDHashEntryHdr
   implements (and does not implement). In particular, the copy
   constructor is deleted, so any derived classes that attempt to make
   themselves copyable will be detected at compile time: the compiler
   will complain that the superclass type is not copyable.

This change on its own will result in many compiler errors, so...

2) Change any derived classes to implement move constructors instead of
   copy constructors. Note that some of these move constructors are,
   strictly speaking, unnecessary, since the relevant classes are moved
   via memcpy in nsTHashtable and its derivatives.
2018-09-20 11:20:36 -04:00
Eric Rahm 0c061732bd Bug 1492204 - Part 1: Stop using deprecated string writing iterators. r=froydnj
This switches over the few remaining usages of the deprecated
BeginWriting/EndWriting(iterator&) functions to the more standard
BeginWriting/EndWriting() functions.

--HG--
extra : rebase_source : 3c54621d4921eb45157ec4edce0b693bdd7f02d5
2018-09-18 09:44:57 -07:00
Ehsan Akhgari 9573bffa13 Bug 1492039 - Remove the XPCOM component registration for SessionStorageManager; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D6118
2018-09-18 09:42:43 -04:00
Boris Zbarsky 951bba6efd Bug 1482194. Throw the right exception when localStorage/sessionStorage quota is reached. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D3034

--HG--
extra : moz-landing-system : lando
2018-08-27 11:12:59 +00:00
Gabriele Svelto b605bebd6a Bug 1488401 - Remove the remnants of the DiskSpaceWatcher r=asuth,janv,smaug
Differential Revision: https://phabricator.services.mozilla.com/D4933

--HG--
extra : moz-landing-system : lando
2018-09-13 06:40:51 +00:00
Daniel Holbert 0faa3b61e4 Bug 1477086: Change LocalStorageManager::CreateOrigin()'s return type to nsAutoCString, to benefit from RVO and avoid needless string copying. r=asuth
MozReview-Commit-ID: 1IALP0xgOqp

--HG--
extra : rebase_source : 893d4ade62e4c0834dbc438854fa7029e27b51f0
2018-07-19 14:45:16 -07:00
Boris Zbarsky 5a90b528ce Bug 1486932 part 2. Remove nsIDOMStorage. r=mccr8 2018-08-31 13:56:55 -04:00
Boris Zbarsky 1fcc87c931 Bug 1486932 part 1. Stop using nsIDOMStorage in xpidl APIs. r=mccr8 2018-08-31 13:56:54 -04:00
Jan Varga 612c73ef66 Bug 1475218 - Disable PBackgroundLocalStorageCache on Android; r=asuth
There can be only one content process on Fennec so there's nothing to synchronize.
2018-08-21 17:27:42 +02:00
Sebastian Hengst 1f7ce23748 Bug 1483493 - Use 'Core :: DOM: Web Storage' in meta data for related files to create bugs in that component. r=janv
Differential Revision: https://phabricator.services.mozilla.com/D3401

--HG--
extra : moz-landing-system : lando
2018-08-15 09:22:45 +00:00
Masatoshi Kimura 3b21b7868b Bug 1090497 - Re-enable warnings as errors on clang-cl. r=froydnj
--HG--
extra : rebase_source : c09366fb93e5b0f72abe1e99d3094e3d96a934fb
extra : intermediate-source : 5950c9d63c3b4fd63a25464a7b50944aaec7079f
extra : source : ca1b9a2bcc4381795f556fea2fb59066567c30f3
2018-07-31 22:10:07 +09:00
Chris Peterson 06a7d5c549 Bug 1473217 - Part 2: dom: Fix misc-unused-raii warnings. r=baku
nsPrintfCString creates a formatted string, but doesn't print it.

ExtractOriginData is called for its constructor's scope and origin out parameters. This ExtractOriginData object doesn't really need a name because it is unused after we have scope and origin,  but this change makes clang-tidy happy and makes the code clear that ExtractOriginData is an object and not a funcion being called.

MozReview-Commit-ID: nxUBwzL4Uq

--HG--
extra : rebase_source : 5fd3a592ac628b14b8221bf2df4fc442fb407106
extra : source : 1dfaf199d2ede7a445b40ec7585c66010f5a1a6b
2018-07-03 22:09:54 -07:00
Jan Varga 5f8daf01d9 Bug 1462162 - Filter local storage cache synchronization messages based on origin; r=asuth
This patch adds a new IPDL protocol PBackgroundLocalStorageCache. It is used by LocalStorageCache object to broadcast changes in local storage cache to other content processes. Each origin has its own PBackgroundLocalStorageCache, so now we can notify content processes that actually have a local storage cache for given origin. This greatly improves performance and reduces memory footprint especialy when local storage changes carry big strings and/or happen very quickly (before this patch all child processes were blindly notified).
2018-07-14 08:34:14 +02:00
Andi-Bogdan Postelnicu 88cc63910d Bug 1453795 - DOM - Initialize member fields in classes/ structures. r=peterv
--HG--
extra : rebase_source : 249fc26e50bded4e94f5effa4308af0f1e54b908
2018-06-16 17:21:46 +03:00
Jeff Gilbert 5b753da289 Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot
MozReview-Commit-ID: JtTcLL5OPF0
2018-06-26 17:05:01 -07:00
Markus Stange bf590995b7 Bug 1462784 - Remove the STORAGE category. r=njn
This was used to label IndexedDB work and work in storage/mozStorage*.
I don't think this deserves its own category; categories are most useful for
the main thread, and most of the time-consuming database-related work happens
on helper threads. The main thread pieces are mostly for asynchronicity-
coordination and don't usually take up time.

This patch labels IndexedDB work as DOM instead (which is maybe debatable) and
the rest as OTHER.

MozReview-Commit-ID: 3UYhFFbi3Ry

--HG--
extra : rebase_source : 5c88dfd67274103de01fe44191f49776017738f9
2018-05-18 17:55:18 -04:00
Csoregi Natalia fc2ed6e92a Backed out 18 changesets (bug 1462784) for ESlint failure on FlameGraph.js:1297. CLOSED TREE
Backed out changeset 79556798ff9f (bug 1462784)
Backed out changeset 88321efb673b (bug 1462784)
Backed out changeset 7880f9dc7023 (bug 1462784)
Backed out changeset 71fe35fd1f7e (bug 1462784)
Backed out changeset a543b94b049a (bug 1462784)
Backed out changeset d1ca8b0f2221 (bug 1462784)
Backed out changeset 68eabfbf3c16 (bug 1462784)
Backed out changeset 34e71c789903 (bug 1462784)
Backed out changeset 6fe79d1ca1bd (bug 1462784)
Backed out changeset e5ad2e525ea9 (bug 1462784)
Backed out changeset 329645ff1e23 (bug 1462784)
Backed out changeset e09c38853172 (bug 1462784)
Backed out changeset 0663d1a6d2da (bug 1462784)
Backed out changeset 106967fc29d2 (bug 1462784)
Backed out changeset 99b4a433a8e5 (bug 1462784)
Backed out changeset 1d38a4cf5a4a (bug 1462784)
Backed out changeset 692017229de6 (bug 1462784)
Backed out changeset c2911a626671 (bug 1462784)
2018-06-01 23:42:00 +03:00
Markus Stange b229cac853 Bug 1462784 - Remove the STORAGE category. r=njn
This was used to label IndexedDB work and work in storage/mozStorage*.
I don't think this deserves its own category; categories are most useful for
the main thread, and most of the time-consuming database-related work happens
on helper threads. The main thread pieces are mostly for asynchronicity-
coordination and don't usually take up time.

This patch labels IndexedDB work as DOM instead (which is maybe debatable) and
the rest as OTHER.

MozReview-Commit-ID: 3UYhFFbi3Ry

--HG--
extra : rebase_source : f83946138d8311ea5aa91f537a1d8e420e784068
2018-05-18 17:55:18 -04:00
Noemi Erli 1fd69fa2bc Backed out 18 changesets (bug 1462784) for failures in devtools/client/performance/test/unit/test_tree-model-08.js on a CLOSED TREE
Backed out changeset a74d36598442 (bug 1462784)
Backed out changeset c8192175f360 (bug 1462784)
Backed out changeset cde492240e99 (bug 1462784)
Backed out changeset 8c8d30fa406c (bug 1462784)
Backed out changeset ad3802ffb780 (bug 1462784)
Backed out changeset 2fe10732076c (bug 1462784)
Backed out changeset 268a72b7c3c4 (bug 1462784)
Backed out changeset 4055eb6c3bc6 (bug 1462784)
Backed out changeset 3901070e2e60 (bug 1462784)
Backed out changeset 2faf787fbbdf (bug 1462784)
Backed out changeset 8f06963c7c6f (bug 1462784)
Backed out changeset 036e6f64e224 (bug 1462784)
Backed out changeset e670f156a603 (bug 1462784)
Backed out changeset cd39588aece4 (bug 1462784)
Backed out changeset 2ac65d100fa2 (bug 1462784)
Backed out changeset ea05ff70a51d (bug 1462784)
Backed out changeset 8a06c0ba42f7 (bug 1462784)
Backed out changeset 52ed9a039ad2 (bug 1462784)
2018-06-01 01:06:29 +03:00
Markus Stange b17c2b3e5b Bug 1462784 - Remove the STORAGE category. r=njn
This was used to label IndexedDB work and work in storage/mozStorage*.
I don't think this deserves its own category; categories are most useful for
the main thread, and most of the time-consuming database-related work happens
on helper threads. The main thread pieces are mostly for asynchronicity-
coordination and don't usually take up time.

This patch labels IndexedDB work as DOM instead (which is maybe debatable) and
the rest as OTHER.

MozReview-Commit-ID: 3UYhFFbi3Ry

--HG--
extra : rebase_source : 16abc3c4bd8ed9ac55b5c188bd10ee26b0566330
2018-05-18 17:55:18 -04:00
Andrea Marchesini dade560913 Bug 1252998 - StorageActivityService - part 9 - Test for nsIStorageActivityService, r=gijs, r=asuth 2018-04-04 23:08:57 +02:00
Andrea Marchesini ce671ff7a9 Bug 1252998 - StorageActivityService - part 8 - nsIStorageActivityService::moveOriginInTime() for testing, r=asuth 2018-04-18 18:19:13 +02:00
Andrea Marchesini e8bc84f98b Bug 1252998 - StorageActivityService - part 7 - StorageActivityService in QuotaManager, r=janv 2018-04-18 18:19:13 +02:00
Andrea Marchesini 231aae58dd Bug 1252998 - StorageActivityService - part 5 - nsIStorageActivityService::getActiveOrigins, r=asuth 2018-04-18 18:19:13 +02:00
Andrea Marchesini 4a97618634 Bug 1252998 - StorageActivityService - part 1 - Introduce StorageActivityService to monitor origin activities, r=asuth 2018-04-18 18:19:10 +02:00
Sebastian Hengst 0819f35e51 Backed out 4 changesets (bug 525063) on request from Andi. a=backout
Backed out changeset 516c4fb1e4b8 (bug 525063)
Backed out changeset 6ff8aaef2866 (bug 525063)
Backed out changeset bf13e4103150 (bug 525063)
Backed out changeset d7d2f08e051c (bug 525063)
2018-04-13 16:01:28 +03:00
Tristan Bourvon a3a77c0312 Bug 525063 - Initialize uninitialized class attributes in m-c. r=ehsan 2018-04-10 21:11:02 +02:00
Nika Layzell 0c3ba13e4c Bug 1437167 - Part 1: Stop using PRIntervalTime as the argument to CondVar::Wait and Monitor::Wait, r=mstange, r=froydnj 2018-04-10 17:49:47 -04:00
Jeremy Lempereur f241ccd125 Bug 1436680 - Allow non-templated uses of AutoTimer. r=chutten,Dexter,janv
Moved the runtime Telemetry::AutoTimer implementation to the Telemetry public API.

MozReview-Commit-ID: KNT6toDQUtR

--HG--
extra : rebase_source : 4c55df7321570d49daa0aef7b916e4550b1f2ffd
2018-02-13 15:23:09 +01:00
Ciure Andrei 7e72dc58ce Backed out 2 changesets (bug 1436680) for bustages on /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/Telemetry.h. a=backout on a CLOSED TREE
Backed out changeset 66fb8813478c (bug 1436680)
Backed out changeset 4258b9e2ebfc (bug 1436680)
2018-02-28 05:56:00 +02:00
Jeremy Lempereur fabf9a4e7b Bug 1436680 - Allow non-templated uses of AutoTimer. r=Dexter,janv
Moved the runtime Telemetry::AutoTimer implementation to the Telemetry public API.

MozReview-Commit-ID: KNT6toDQUtR

--HG--
extra : rebase_source : 8d40759f616511f0a3a19d42c8105e6278bf7e2a
2018-02-13 15:23:09 +01:00
Jeremy Lempereur 97a98031cd Bug 1432791 - Remove the Microsecond AutoTimer resolution. r=Dexter
Telemetry's AutoTimer Microsecond resolution was not used. I removed it with the TimerResolution enum, which allowed me to remove a couple of templates as well.

MozReview-Commit-ID: 76qHgmYEsE3

--HG--
extra : rebase_source : 1f5826f1be990d4814de15875cd0a726213712d4
2018-02-07 21:11:22 +01:00
Chris Peterson 37efe4d0e6 Bug 1428535 - Add missing override specifiers to overridden virtual functions. r=froydnj
MozReview-Commit-ID: DCPTnyBooIe

--HG--
extra : rebase_source : cfec2d96faeb11656d86d760a34e0a04cacddb13
extra : intermediate-source : 6176724d63788b0fe8caa3f91607c2d93dbaa7ec
extra : source : eebbb0600447f9b64aae3bcd47b4be66c02a51ea
2017-11-05 19:37:28 -08:00
Nika Layzell 9a28c8db2e Bug 1419597 - Part 12: Move storage pref enabled check into a static method on dom::Storage, r=asuth
MozReview-Commit-ID: 7qES6MrIxK9
2017-11-23 13:12:03 -05:00
Kris Maglione 60d080b412 Bug 1404198: Part 2i - Switch to NS_NewTimer* in dom. r=njn
MozReview-Commit-ID: 8Oei6TuXNbu

--HG--
extra : rebase_source : 31c583c699790cbcf302064146d313ee8126ef0c
2017-10-15 23:15:40 -07:00
Jonathan Watt 60fa0649f2 Bug 1406819 - Remove various bits of dead code from dom/. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D109
2017-10-11 10:09:13 +01:00
Nicholas Nethercote 8a68e6fb83 Bug 1403868 (part 4) - Reduce tools/profiler/public/*.h to almost nothing in non-MOZ_GECKO_PROFILER builds. r=mstange.
Currently the Gecko Profiler defines a moderate amount of stuff when
MOZ_GECKO_PROFILER is undefined. It also #includes various headers, including
JS ones. This is making it difficult to separate Gecko's media stack for
inclusion in Servo.

This patch greatly simplifies how things are exposed. The starting point is:

- GeckoProfiler.h can be #included unconditionally;

- everything else from the profiler must be guarded by MOZ_GECKO_PROFILER.

In practice this introduces way too many #ifdefs, so the patch loosens it by
adding no-op macros for a number of the most common operations.

The net result is that #ifdefs and macros are used a bit more, but almost
nothing is exposed in non-MOZ_GECKO_PROFILER builds (including
ProfilerMarkerPayload.h and GeckoProfiler.h), and understanding what is exposed
is much simpler than before.

Note also that in BHR, ThreadStackHelper is now entirely absent in
non-MOZ_GECKO_PROFILER builds.
2017-10-04 09:11:18 +11:00
Thomas Wisniewski 9c0a07404c Bug 1388428 - Extend browsingData to restrict removing localStorage to a given list of hostnames; r=asuth,bsilverberg
MozReview-Commit-ID: ELgjLHsVLkv

--HG--
extra : rebase_source : 8df793d8484762670e42fff4c3708df2b3ea1ebe
2017-09-25 16:47:38 -04:00
Chris Peterson a6a56ed916 Bug 870698 - Part 6: Replace Append(NS_LITERAL_CSTRING("")) with AppendLiteral(""). r=erahm
The NS_LITERAL_CSTRING macro creates a temporary nsLiteralCString to encapsulate the string literal and its length, but AssignLiteral() can determine the string literal's length at compile-time without nsLiteralCString.

MozReview-Commit-ID: F750v6NN81s

--HG--
extra : rebase_source : 714dd78df0f4c33e23e5b117615bd8fd561674c5
extra : source : 742bda9e6b1ddaf34d09894204ad18ce798b79b7
2017-09-07 18:25:25 -07:00
Nicholas Nethercote e3c9cbb969 Bug 1401813 - Rename Null[C]String() as Void[C]String(). r=erahm.
XPCOM's string API doesn't have the notion of a "null string". But it does have
the notion of a "void string" (or "voided string"), and that's what these
functions are returning. So the names should reflect that.

--HG--
extra : rebase_source : 4e3f982e0873877174a08a25413595ff66f7d20e
2017-09-22 14:35:46 +10:00
Andrea Marchesini 84764f515b Bug 1397702 - StorageObserver should use nsTObserverArray for the sink in order to support removal when iterating. r=mccr8 2017-09-10 13:32:13 -04:00
Andrew Sutherland 9d993b8aa0 Bug 1395598 - Correct LocalStorage mozStorage misuse. r=janv 2017-09-01 10:32:59 -04:00
Masatoshi Kimura 50a9a5c541 Bug 1389529 - Remove @deprecated nsIDOMStorageManager.getLocalStorageForPrincipal. r=mayhemer
MozReview-Commit-ID: 7xmsk1b2MQE

--HG--
extra : rebase_source : c4ba78fc2d1a916f5e8f9c98368daf689d703440
2017-08-12 00:36:01 +09:00
Jan Varga bd9fcfbc01 Bug 1350637 - Part 11: Fix a race between parent/child process; r=asuth
When a storage child actor gets the xpcom-shutdown notification, it releases
the actor singleton which asynchronously sends __delete__ to the parent and
destroys the child actor immediatelly. However, at the same time parent can be
sending a message to the child which results in a routing error since the child
actor doesn't exist anymore. The routing error causes a crash.
This patch prevents the race by doing the teardown in two steps. We send a
message to the parent DeleteMe and parent then sends __delete__ to the child.
2017-08-08 23:02:57 +02:00
Jan Varga ac9ac9e347 Bug 1350637 - Part 9: Move Local Storage event broadcasting from PContent to PBackground; r=asuth 2017-08-08 23:02:28 +02:00
Jan Varga b53d9b8691 Bug 1350637 - Part 7: Convert asynchronous StorageDBParent initialization to be synchronous and fix low disk space checking; r=asuth 2017-08-08 23:01:56 +02:00
Jan Varga 9d50c72e29 Bug 1350637 - Part 6: Fix a deadlock when main process storage child actor triggers storage thread initialization; r=asuth 2017-08-08 23:01:52 +02:00
Jan Varga 3acd1f5628 Bug 1350637 - Part 5: Factor out the parent actor observer sink to work on the PBackground thread, fix the rest of observer handling to use IPC; r=asuth 2017-08-08 23:01:33 +02:00
Jan Varga c186d54bb2 Bug 1350637 - Part 2: Core changes for LocalStorage on PBackground; r=asuth
- stop inheriting StorageDBBridge in StorageDBThread and StorageDBChild
- move StorageDBThread and StorageDBChild initialization out of LocalStorageCache
- use IPC even for the intra-process communication in main process
- rationalize a bit storage observer code
- make StorageDBParent to always be created and destroyed on the background thread
2017-07-26 12:19:13 +02:00
Jan Varga ceff0f7d8f Bug 1350637 - Part 1: Move PStorage stubs from PContent to PBackground; r=asuth r=billm
--HG--
rename : dom/storage/PStorage.ipdl => dom/storage/PBackgroundStorage.ipdl
2017-08-08 22:56:49 +02:00
Thomas Wisniewski e530ba4d43 Bug 1355576 - Add ability to clear all localStorage with the browsingData API; r=bsilverberg,janv
MozReview-Commit-ID: 4UUqg62yIo9

--HG--
extra : rebase_source : 9c6154bbe878fc3921d22027fdc90dbdaed05be9
2017-07-04 20:59:26 -04:00
Phil Ringnalda e760ae7c08 Backed out changeset 5020a2dcb8a7 (bug 1355576) for failures in test_ext_browsingData.js
MozReview-Commit-ID: BVSLvIkK5Wd
2017-08-06 15:29:38 -07:00
Thomas Wisniewski 5eeefa573d Bug 1355576 - Add ability to clear all localStorage with the browsingData API; r=bsilverberg,janv
MozReview-Commit-ID: 4UUqg62yIo9

--HG--
extra : rebase_source : d38ee312dbfb3b7f46893d7af200b564876c82d1
2017-07-04 20:59:26 -04:00
Bill McCloskey c6c1f4bbc9 Bug 1385413 - Remove thread parameter from onDispatchedEvent (r=erahm)
This parameter isn't used by any implementation of onDispatchedEvent,
and keeping the parameter makes later refactorings in this bug more difficult.

MozReview-Commit-ID: 90VY2vYtwCW
2017-07-28 13:09:06 -07:00
Andrea Marchesini d2b7ec5d78 Bug 1384650 - Remove extra warnings in SessionStorageManage, r=erahm 2017-07-26 21:47:43 +02:00
Bevis Tseng a7505864a8 Bug 1378930 - Part 2: Remove the aName parameter from SchedulerGroup/DocGroup/DispatcherTrait. r=billm
--HG--
extra : rebase_source : 11319e568a51d16754a6a9990f76c35c86c2bda7
2017-07-26 16:13:35 +08:00
Andrea Marchesini 3061742432 Bug 1379568 - Filtering for StorageEvent broadcasting, r=asuth 2017-07-26 15:55:51 +02:00
Sebastian Hengst 88f58a1134 Backed out changeset 960a0dc9092f (bug 1379568) for frequently timing out web-platform-test /webstorage/storage_setitem.html. r=backout 2017-07-12 19:04:44 +02:00
Andrea Marchesini 7ab90de6be Bug 1379568 - Filtering for StorageEvent broadcasting, r=asuth 2017-07-12 14:49:05 +02:00
Wes Kocher 19d135c982 Merge m-c to autoland, a=merge
MozReview-Commit-ID: 4R4GFHPiij
2017-07-06 16:19:38 -07:00
Andrea Marchesini 68ee090884 Bug 1333981 - Introduce StorageNotifierService for the dispatching of StorageEvent using the correct mainthread event target, r=billm 2017-07-06 19:35:33 +02:00
Sebastian Hengst f48d2ca17a Backed out changeset 326615f76fd9 (bug 1333981) for asserting in test_storageNotifications.html. r=backout 2017-07-06 15:16:36 +02:00
Sylvestre Ledru 4e9cf83ee8 Bug 1378712 - Remove all trailing whitespaces r=Ehsan
MozReview-Commit-ID: Kdz2xtTF9EG

--HG--
extra : rebase_source : 7235b3802f25bab29a8c6ba40a181a722f3df0ce
2017-07-06 14:00:35 +02:00
Andrea Marchesini 137ff0d2b0 Bug 1333981 - Introduce StorageNotifierService for the dispatching of StorageEvent using the correct mainthread event target, r=billm 2017-07-06 12:55:35 +02:00
Bill McCloskey f115503a0b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Nicholas Nethercote 58786e1ea7 Bug 1375392 - Tweak the PROFILER_LABEL* macros. r=mstange.
This patch makes the following changes to the macros.

- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
  classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
  mostly misused.

- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
  universally available now anyway.

- Combines the first two string literal arguments of PROFILER_LABEL and
  PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
  them to be separate, and it forced a '::' in the label, which isn't always
  appropriate. Also, the meaning of the "name_space" argument was interpreted
  in an interesting variety of ways.

- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
  it clearer they construct RAII objects rather than just being function calls.
  (I myself have screwed up the scoping because of this in the past.)

- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
  the caller doesn't need to. This makes a *lot* more of the uses fit onto a
  single line.

The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).

- Fixes a bunch of labels that had gotten out of sync with the name of the
  class and/or function that encloses them.

- Removes a useless PROFILER_LABEL use within a trivial scope in
  EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
  any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
  a good idea.

- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
  done within them, instead of at their callsites, because that's a more
  standard way of doing things.

--HG--
extra : rebase_source : 318d1bc6fc1425a94aacbf489dd46e4f83211de4
2017-06-22 17:08:53 +10:00
Nicholas Nethercote 033f83145c Bug 1375387 - Reorder and section-ify GeckoProfiler.h. r=mstange.
This patch gives some structure and order to the profiler's API.

It also renames AutoProfilerRegister as AutoProfilerRegisterThread, to match
profiler_register_thread().
2017-06-22 14:28:47 +10:00
Nicholas Nethercote f1364a75ea Bug 1374580 (part 3) - Remove ns{,C}Substring typedefs. r=froydnj.
All the instances are converted as follows.

- nsSubstring  --> nsAString
- nsCSubstring --> nsACString

--HG--
extra : rebase_source : cfd2238c52e3cb4d13e3bd5ddb80ba6584ab6d91
2017-06-20 19:19:52 +10:00
Carsten "Tomcat" Book 8a1350b5a6 Backed out changeset 4f6302a98ae4 (bug 1372405)
--HG--
extra : rebase_source : 41632f3158e88e692809731394a683d065a73dfb
2017-06-21 13:59:26 +02:00
Bill McCloskey 6b3e84ed5f 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 ea1b86680c Backed out changeset 9846de3bd954 (bug 1372405)
--HG--
extra : rebase_source : 5d4a48e8ec394c329994689d938d2a6e9b2752b0
2017-06-20 08:27:02 +02:00
Bill McCloskey 4592152411 Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-19 22:25:47 -07:00
Andrea Marchesini 8d3ee27842 Bug 1370087 - GenerateOriginKey cannot assert the existence of nsIPrincipal, r=smaug 2017-06-12 12:26:08 +02:00
Andrea Marchesini 7cf1d1c9b0 Bug 1366101 - Remove extra warnings in SessionStorageManage, r=smaug 2017-05-19 17:26:42 +02:00
Andrea Marchesini c220978a34 Bug 1322316 - Split SessionStorage and LocalStorage implementation - part 11 - SessionStorageCache must have 2 DataSet: default and sessionOnly, r=asuth 2017-05-17 07:01:15 +02:00
Andrea Marchesini ea8fdbd1e1 Bug 1322316 - Split SessionStorage and LocalStorage implementation - part 10 - Move IsSessionOnly() in Storage class, r=asuth 2017-05-17 07:01:15 +02:00
Andrea Marchesini 44f653e013 Bug 1322316 - Split SessionStorage and LocalStorage implementation - part 9 - Move SessionStorageCache in separate files, r=asuth
--HG--
rename : dom/storage/SessionStorage.cpp => dom/storage/SessionStorageCache.cpp
rename : dom/storage/SessionStorage.h => dom/storage/SessionStorageCache.h
2017-05-17 07:01:14 +02:00
Andrea Marchesini 4d15e9cb30 Bug 1322316 - Split SessionStorage and LocalStorage implementation - part 8 - Rename StorageCache to LocalStorageCache, r=asuth
--HG--
rename : dom/storage/StorageCache.cpp => dom/storage/LocalStorageCache.cpp
rename : dom/storage/StorageCache.h => dom/storage/LocalStorageCache.h
2017-05-17 07:01:14 +02:00
Andrea Marchesini 64c5efb312 Bug 1322316 - Split SessionStorage and LocalStorage implementation - part 7 - SessionStorageManager must be a StorageObserverSink, r=asuth 2017-05-17 07:01:14 +02:00
Andrea Marchesini d1223c0fbd Bug 1322316 - Split SessionStorage and LocalStorage implementation - part 6 - Implementation of IsForkOf(), r=asuth 2017-05-17 07:01:14 +02:00
Andrea Marchesini 24bdb3ece3 Bug 1322316 - Split SessionStorage and LocalStorage implementation - part 5 - Shared broadcasting of changes, r=asuth 2017-05-17 07:01:14 +02:00
Andrea Marchesini 9ace5e5eb5 Bug 1322316 - Split SessionStorage and LocalStorage implementation - part 4 - Rename StorageManagerBase to LocalStorageManager, r=asuth
--HG--
rename : dom/storage/StorageManager.cpp => dom/storage/LocalStorageManager.cpp
rename : dom/storage/StorageManager.h => dom/storage/LocalStorageManager.h
2017-05-17 07:01:14 +02:00