gecko-dev/dom/quota
Jan Varga 569733012f Bug 1749504 - Add a way to asynchronously release directory locks when they are invalidated; r=dom-storage-reviewers,jstutte
Directory locks which block clearing operations are currently invalidated and
Client::AbortOperations is called for corresponding quota clients. There's no
other way for directory lock owners to release directory locks other than in
Client::AbortOperations or when they are no longer needed. This is especially
problematic in tests.

Changes done in this patch:
- added DirectoryLock::OnInvalidate pure virtual method
- added DirectoryLockImpl::OnInvalidate implementation
- modified DirectoryLockImpl::Invalidate to call the callback

Differential Revision: https://phabricator.services.mozilla.com/D185569
2023-09-12 12:40:41 +00:00
..
scripts
test Bug 1749504 - Rename EnsureStorageIsInitialized to EnsureStorageIsInitializedInternal; r=dom-storage-reviewers,jstutte 2023-09-12 12:40:41 +00:00
ActorsChild.cpp Bug 1749504 - Add QuotaManager::ClearStorage method; r=dom-storage-reviewers,jstutte 2023-09-12 12:40:40 +00:00
ActorsChild.h
ActorsParent.cpp Bug 1749504 - Simplify signature of QuotaManager::CreateDirectoryLock; r=dom-storage-reviewers,jstutte 2023-09-12 12:40:41 +00:00
ActorsParent.h Bug 1840770 - Move PQuotaParent implementation to separate source files; r=dom-storage-reviewers,jari 2023-07-13 09:57:18 +00:00
Assertions.cpp Bug 1839417 - Remove duplicated code for assertions; r=dom-storage-reviewers,asuth 2023-06-21 09:09:51 +00:00
Assertions.h
AssertionsImpl.h
CachingDatabaseConnection.cpp Backed out 2 changesets (bug 1791767) as requested by jjalkanen for further checks. CLOSED TREE 2023-08-17 09:51:01 +03:00
CachingDatabaseConnection.h Backed out 2 changesets (bug 1791767) as requested by jjalkanen for further checks. CLOSED TREE 2023-08-17 09:51:01 +03:00
CanonicalQuotaObject.cpp Bug 1781201 - Convert GetOriginDirectory/DeleteOriginDirectory arguments into a single argument; r=hsingh 2023-05-03 02:05:11 +00:00
CanonicalQuotaObject.h
CheckedUnsafePtr.h
CipherStrategy.h Bug 1843038 - Make CypherStrategy::DeserializeKey fallible, r=janv 2023-07-18 14:32:57 +00:00
Client.cpp
Client.h Bug 1827377 - Add support for clearing storages in private repository; r=hsingh 2023-04-26 08:23:13 +00:00
ClientImpl.h
ClientUsageArray.cpp
ClientUsageArray.h
CommonMetadata.h Bug 1781201 - Generate unique anonymous origins for private browsing; r=hsingh 2023-05-04 04:50:43 +00:00
components.conf
Config.h
Constants.h Bug 1840545 - Move some constants to Constants.h; r=dom-storage-reviewers,jari 2023-07-04 15:33:38 +00:00
DebugOnlyMacro.h
DecryptingInputStream_impl.h Bug 1843038 - Make CypherStrategy::DeserializeKey fallible, r=janv 2023-07-18 14:32:57 +00:00
DecryptingInputStream.cpp
DecryptingInputStream.h
DirectoryLock.h Bug 1749504 - Add a way to asynchronously release directory locks when they are invalidated; r=dom-storage-reviewers,jstutte 2023-09-12 12:40:41 +00:00
DirectoryLockImpl.cpp Bug 1749504 - Add a way to asynchronously release directory locks when they are invalidated; r=dom-storage-reviewers,jstutte 2023-09-12 12:40:41 +00:00
DirectoryLockImpl.h Bug 1749504 - Add a way to asynchronously release directory locks when they are invalidated; r=dom-storage-reviewers,jstutte 2023-09-12 12:40:41 +00:00
DummyCipherStrategy.h Bug 1843038 - Make CypherStrategy::DeserializeKey fallible, r=janv 2023-07-18 14:32:57 +00:00
EncryptedBlock.h
EncryptingOutputStream_impl.h
EncryptingOutputStream.cpp
EncryptingOutputStream.h
FileStreams.cpp
FileStreams.h
FileUtils.cpp Bug 1840545 - Move some file utils to separate files; r=dom-storage-reviewers,jari 2023-07-04 15:33:39 +00:00
FileUtils.h Bug 1840545 - Move some file utils to separate files; r=dom-storage-reviewers,jari 2023-07-04 15:33:39 +00:00
FirstInitializationAttempts.h
FirstInitializationAttemptsImpl.h
Flatten.h
ForwardDecls.h Bug 1749504 - Separate the reset functionality out of ResetOrClearOp; r=dom-storage-reviewers,jstutte 2023-09-12 12:40:40 +00:00
GroupInfo.cpp
GroupInfo.h
GroupInfoPair.cpp Bug 1827376: Introduced a new persistence type 'Private' for PBM.r=janv,dom-storage-reviewers 2023-04-25 11:34:36 +00:00
GroupInfoPair.h Bug 1827376: Introduced a new persistence type 'Private' for PBM.r=janv,dom-storage-reviewers 2023-04-25 11:34:36 +00:00
InitializationTypes.cpp
InitializationTypes.h
IPCQuotaObject.ipdlh
IPCStreamCipherStrategy.h
moz.build Bug 1851783 - Move OriginParser to separate source files; r=hsingh 2023-09-06 12:54:04 +00:00
NormalOriginOperationBase.cpp Bug 1840545 - Move NormalOriginOperationBase to separate files; r=dom-storage-reviewers,jari 2023-07-04 15:33:39 +00:00
NormalOriginOperationBase.h Bug 1840545 - Fix FinalizeOriginEvictionOp to follow standard state advancing; r=dom-storage-reviewers,asuth 2023-07-13 09:57:16 +00:00
nsIndexedDBProtocolHandler.cpp
nsIndexedDBProtocolHandler.h
nsIQuotaCallbacks.idl
nsIQuotaManagerService.idl Bug 1827377 - Add support for clearing storages in private repository; r=hsingh 2023-04-26 08:23:13 +00:00
nsIQuotaRequests.idl
nsIQuotaResults.idl Bug 1781201 - Add mStorageOrigin to PrincipalMetadata; r=hsingh 2023-05-03 02:05:11 +00:00
NSSCipherStrategy.cpp Bug 1843038 - Make CypherStrategy::DeserializeKey fallible, r=janv 2023-07-18 14:32:57 +00:00
NSSCipherStrategy.h Bug 1843038 - Make CypherStrategy::DeserializeKey fallible, r=janv 2023-07-18 14:32:57 +00:00
OriginInfo.cpp Bug 1781201 - Generate unique anonymous origins for private browsing; r=hsingh 2023-05-04 04:50:43 +00:00
OriginInfo.h Bug 1781201 - Add mStorageOrigin to PrincipalMetadata; r=hsingh 2023-05-03 02:05:11 +00:00
OriginOperationBase.cpp Bug 1842350 - Remove OriginOperationBase::mNeedsStorageInit; r=dom-storage-reviewers,asuth 2023-07-14 09:51:15 +00:00
OriginOperationBase.h Bug 1842350 - Remove OriginOperationBase::mNeedsStorageInit; r=dom-storage-reviewers,asuth 2023-07-14 09:51:15 +00:00
OriginOperations.cpp Bug 1749504 - Rename EnsureStorageIsInitialized to EnsureStorageIsInitializedInternal; r=dom-storage-reviewers,jstutte 2023-09-12 12:40:41 +00:00
OriginOperations.h Bug 1749504 - Add QuotaManager::ClearStorage method; r=dom-storage-reviewers,jstutte 2023-09-12 12:40:40 +00:00
OriginParser.cpp Bug 1852071: Created a new helper IsUUIDOrigin to check if a given string is in UUID format.r=dom-storage-reviewers,janv 2023-09-07 20:53:47 +00:00
OriginParser.h Bug 1852071: Created a new helper IsUUIDOrigin to check if a given string is in UUID format.r=dom-storage-reviewers,janv 2023-09-07 20:53:47 +00:00
OriginScope.h
PersistenceType.cpp Bug 1827376: Introduced a new persistence type 'Private' for PBM.r=janv,dom-storage-reviewers 2023-04-25 11:34:36 +00:00
PersistenceType.h Bug 1827376: Introduced a new persistence type 'Private' for PBM.r=janv,dom-storage-reviewers 2023-04-25 11:34:36 +00:00
PQuota.ipdl Bug 1749504 - Add QuotaManager::ClearStorage method; r=dom-storage-reviewers,jstutte 2023-09-12 12:40:40 +00:00
PQuotaRequest.ipdl Bug 1749504 - Add QuotaManager::ClearStorage method; r=dom-storage-reviewers,jstutte 2023-09-12 12:40:40 +00:00
PQuotaUsageRequest.ipdl
PRemoteQuotaObject.ipdl
QMResult.cpp
QMResult.h
QuotaCommon.cpp
QuotaCommon.h Bug 1840810 - Use Verbose instead of Log Severity for QM_OR_ELSE_LOG_VERBOSE. r=dom-storage-reviewers,janv 2023-08-21 15:51:05 +00:00
QuotaManager.h Bug 1749504 - Simplify signature of QuotaManager::CreateDirectoryLock; r=dom-storage-reviewers,jstutte 2023-09-12 12:40:41 +00:00
QuotaManagerImpl.h Bug 1839417 - Move QuotaManager::CollectPendingOriginsForListing implementation to QuotaManagerImpl.h; r=dom-storage-reviewers,asuth 2023-06-22 08:04:16 +00:00
QuotaManagerService.cpp Bug 1749504 - Add QuotaManager::ClearStorage method; r=dom-storage-reviewers,jstutte 2023-09-12 12:40:40 +00:00
QuotaManagerService.h
QuotaObject.cpp
QuotaObject.h
QuotaParent.cpp Bug 1749504 - Add QuotaManager::ClearStorage method; r=dom-storage-reviewers,jstutte 2023-09-12 12:40:40 +00:00
QuotaParent.h Bug 1749504 - Add QuotaManager::ClearStorage method; r=dom-storage-reviewers,jstutte 2023-09-12 12:40:40 +00:00
QuotaRequestBase.cpp Bug 1840545 - Move QuotaRequestBase to separate files; r=dom-storage-reviewers,jari 2023-07-13 09:57:17 +00:00
QuotaRequestBase.h Bug 1840545 - Move QuotaRequestBase to separate files; r=dom-storage-reviewers,jari 2023-07-13 09:57:17 +00:00
QuotaRequests.cpp
QuotaRequests.h
QuotaResults.cpp Bug 1781201 - Add mStorageOrigin to PrincipalMetadata; r=hsingh 2023-05-03 02:05:11 +00:00
QuotaResults.h
QuotaUsageRequestBase.cpp Bug 1840545 - Move QuotaUsageRequestBase to separate files; r=dom-storage-reviewers,jari 2023-07-13 09:57:16 +00:00
QuotaUsageRequestBase.h Bug 1840545 - Move QuotaUsageRequestBase to separate files; r=dom-storage-reviewers,jari 2023-07-13 09:57:16 +00:00
RemoteQuotaObject.cpp
RemoteQuotaObject.h
RemoteQuotaObjectChild.cpp
RemoteQuotaObjectChild.h
RemoteQuotaObjectParent.cpp
RemoteQuotaObjectParent.h
RemoteQuotaObjectParentTracker.h
RemoveParen.h
ResolvableNormalOriginOp.h Bug 1840545 - Rename ResolvableOriginOp to ResolvableNormalOriginOp; r=dom-storage-reviewers,jari 2023-07-13 09:57:18 +00:00
ResultExtensions.h
SanitizationUtils.cpp Bug 1839417 - Move sanitization methods to separate files; r=dom-storage-reviewers,asuth 2023-06-22 08:04:16 +00:00
SanitizationUtils.h Bug 1839417 - Move sanitization methods to separate files; r=dom-storage-reviewers,asuth 2023-06-22 08:04:16 +00:00
ScopedLogExtraInfo.cpp Bug 1755206 - Allow setting context for remote debugging in content process. r=dom-storage-reviewers,janv 2023-06-12 04:41:00 +00:00
ScopedLogExtraInfo.h Bug 1755206 - Allow setting context for remote debugging in content process. r=dom-storage-reviewers,janv 2023-06-12 04:41:00 +00:00
SerializationHelpers.h Bug 1781201 - Add mStorageOrigin to PrincipalMetadata; r=hsingh 2023-05-03 02:05:11 +00:00
StorageHelpers.cpp
StorageHelpers.h
StorageManager.cpp
StorageManager.h
StreamUtils.cpp Bug 1839417 - Move stream helpers to separate files; r=dom-storage-reviewers,asuth 2023-06-22 08:04:17 +00:00
StreamUtils.h Bug 1839417 - Move stream helpers to separate files; r=dom-storage-reviewers,asuth 2023-06-22 08:04:17 +00:00
UsageInfo.h