Bug 1286798 - Part 24: A new exclusive directory lock shouldn't invalidate existing internal directory locks; r=asuth

This fixes an intermittent failure when multiple clearStoragesForPrincipal() are called at the same time.
This commit is contained in:
Jan Varga 2018-11-29 21:48:31 +01:00
Родитель a5c446d3d9
Коммит 480f7ccea1
1 изменённых файлов: 2 добавлений и 2 удалений

Просмотреть файл

@ -5262,9 +5262,9 @@ QuotaManager::OpenDirectoryInternal(const Nullable<PersistenceType>& aPersistenc
lock->GetBlockedOnLocks();
for (DirectoryLockImpl* blockedOnLock : blockedOnLocks) {
blockedOnLock->Invalidate();
if (!blockedOnLock->IsInternal()) {
blockedOnLock->Invalidate();
MOZ_ASSERT(!blockedOnLock->GetClientType().IsNull());
Client::Type clientType = blockedOnLock->GetClientType().Value();
MOZ_ASSERT(clientType < Client::TypeMax());