Bug 1209351 (part 2) - Optimize nsTHashTable::RemoveEntry() usage in dom/. r=bz.

--HG--
extra : rebase_source : 8550f181356550b6c0e540c12f61f2d1148d2050
This commit is contained in:
Nicholas Nethercote 2015-09-24 19:05:16 -07:00
Родитель f72bee4d5f
Коммит 77d38112ab
5 изменённых файлов: 12 добавлений и 13 удалений

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

@ -5040,7 +5040,7 @@ nsDocument::MozSetImageElement(const nsAString& aImageElementId,
if (entry) {
entry->SetImageElement(aElement);
if (entry->IsEmpty()) {
mIdentifierMap.RemoveEntry(aImageElementId);
mIdentifierMap.RemoveEntry(entry);
}
}
}
@ -9403,7 +9403,7 @@ nsDocument::ForgetLink(Link* aLink)
NS_ASSERTION(entry || mStyledLinksCleared,
"Document knows nothing about this Link!");
#endif
(void)mStyledLinks.RemoveEntry(aLink);
mStyledLinks.RemoveEntry(aLink);
}
void
@ -10122,11 +10122,14 @@ nsIDocument::RegisterActivityObserver(nsISupports* aSupports)
bool
nsIDocument::UnregisterActivityObserver(nsISupports* aSupports)
{
if (!mActivityObservers)
if (!mActivityObservers) {
return false;
if (!mActivityObservers->GetEntry(aSupports))
}
nsPtrHashKey<nsISupports>* entry = mActivityObservers->GetEntry(aSupports);
if (!entry) {
return false;
mActivityObservers->RemoveEntry(aSupports);
}
mActivityObservers->RemoveEntry(entry);
return true;
}

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

@ -2014,7 +2014,7 @@ HTMLMediaElement::RemoveMediaElementFromURITable()
}
entry->mElements.RemoveElement(this);
if (entry->mElements.IsEmpty()) {
gElementTable->RemoveEntry(mLoadingSrc);
gElementTable->RemoveEntry(entry);
if (gElementTable->Count() == 0) {
delete gElementTable;
gElementTable = nullptr;

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

@ -595,10 +595,8 @@ ProcessPriorityManagerImpl::ObserveContentParentDestroyed(nsISupports* aSubject)
mParticularManagers.Remove(childID);
if (mHighPriorityChildIDs.Contains(childID)) {
mHighPriorityChildIDs.RemoveEntry(childID);
}
}
}
static PLDHashOperator

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

@ -454,7 +454,7 @@ void MediaCacheStream::BlockList::RemoveBlock(int32_t aBlock)
mEntries.GetEntry(entry->mNextBlock)->mPrevBlock = entry->mPrevBlock;
mEntries.GetEntry(entry->mPrevBlock)->mNextBlock = entry->mNextBlock;
}
mEntries.RemoveEntry(aBlock);
mEntries.RemoveEntry(entry);
--mCount;
}

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

@ -2726,9 +2726,7 @@ ServiceWorkerManager::MaybeStopControlling(nsIDocument* aDoc)
StopControllingADocument(registration);
}
if (mAllDocuments.Contains(aDoc)) {
mAllDocuments.RemoveEntry(aDoc);
}
}
void