Bug 1251253 - prevent null pointer dereference of |aContext| in CacheStorageService::DoomStorageEntries. r=mayhemer

MozReview-Commit-ID: BmXXg4eW25n

--HG--
extra : rebase_source : 35ca2824ebdd618fef7b6de4858de8214571f466
This commit is contained in:
Bogdan Postelnicu 2016-02-25 20:41:52 +02:00
Родитель b7dad904d3
Коммит 3de845aa19
1 изменённых файлов: 11 добавлений и 7 удалений

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

@ -1799,15 +1799,19 @@ CacheStorageService::DoomStorageEntries(nsCSubstring const& aContextKey,
{
mozilla::MutexAutoLock lock(mForcedValidEntriesLock);
for (auto iter = mForcedValidEntries.Iter(); !iter.Done(); iter.Next()) {
bool matches;
DebugOnly<nsresult> rv = CacheFileUtils::KeyMatchesLoadContextInfo(
iter.Key(), aContext, &matches);
MOZ_ASSERT(NS_SUCCEEDED(rv));
if (aContext) {
for (auto iter = mForcedValidEntries.Iter(); !iter.Done(); iter.Next()) {
bool matches;
DebugOnly<nsresult> rv = CacheFileUtils::KeyMatchesLoadContextInfo(
iter.Key(), aContext, &matches);
MOZ_ASSERT(NS_SUCCEEDED(rv));
if (matches) {
iter.Remove();
if (matches) {
iter.Remove();
}
}
} else {
mForcedValidEntries.Clear();
}
}