From 641ad4b8f65c1ebfda9618558203cfa1374cd349 Mon Sep 17 00:00:00 2001 From: Simon Giesecke Date: Thu, 17 Dec 2020 16:14:43 +0000 Subject: [PATCH] Bug 1682536 - Use references/NotNull in Manager. r=dom-workers-and-storage-reviewers,asuth Differential Revision: https://phabricator.services.mozilla.com/D99776 --- dom/cache/Manager.cpp | 10 ++++------ dom/cache/Manager.h | 6 +++--- dom/cache/StreamList.cpp | 4 ++-- 3 files changed, 9 insertions(+), 11 deletions(-) diff --git a/dom/cache/Manager.cpp b/dom/cache/Manager.cpp index 6cab36efbc48..0998522aff30 100644 --- a/dom/cache/Manager.cpp +++ b/dom/cache/Manager.cpp @@ -1804,16 +1804,14 @@ void Manager::ReleaseBodyId(const nsID& aBodyId) { const ManagerId& Manager::GetManagerId() const { return *mManagerId; } -void Manager::AddStreamList(StreamList* aStreamList) { +void Manager::AddStreamList(StreamList& aStreamList) { NS_ASSERT_OWNINGTHREAD(Manager); - MOZ_DIAGNOSTIC_ASSERT(aStreamList); - mStreamLists.AppendElement(aStreamList); + mStreamLists.AppendElement(WrapNotNullUnchecked(&aStreamList)); } -void Manager::RemoveStreamList(StreamList* aStreamList) { +void Manager::RemoveStreamList(StreamList& aStreamList) { NS_ASSERT_OWNINGTHREAD(Manager); - MOZ_DIAGNOSTIC_ASSERT(aStreamList); - mStreamLists.RemoveElement(aStreamList); + mStreamLists.RemoveElement(&aStreamList); } void Manager::ExecuteCacheOp(Listener* aListener, CacheId aCacheId, diff --git a/dom/cache/Manager.h b/dom/cache/Manager.h index 77dbd5c020c4..27c1eb29aa57 100644 --- a/dom/cache/Manager.h +++ b/dom/cache/Manager.h @@ -177,8 +177,8 @@ class Manager final : public SafeRefCounted { // Methods to allow a StreamList to register themselves with the Manager. // StreamList objects must call RemoveStreamList() before they are destroyed. - void AddStreamList(StreamList* aStreamList); - void RemoveStreamList(StreamList* aStreamList); + void AddStreamList(StreamList& aStreamList); + void RemoveStreamList(StreamList& aStreamList); void ExecuteCacheOp(Listener* aListener, CacheId aCacheId, const CacheOpArgs& aOpArgs); @@ -268,7 +268,7 @@ class Manager final : public SafeRefCounted { static ListenerId sNextListenerId; // Weak references cleared by RemoveStreamList() in StreamList destructors. - nsTArray mStreamLists; + nsTArray> mStreamLists; bool mShuttingDown; State mState; diff --git a/dom/cache/StreamList.cpp b/dom/cache/StreamList.cpp index 8fc0838f5718..2e18279947e9 100644 --- a/dom/cache/StreamList.cpp +++ b/dom/cache/StreamList.cpp @@ -74,7 +74,7 @@ void StreamList::Activate(CacheId aCacheId) { mActivated = true; mCacheId = aCacheId; mManager->AddRefCacheId(mCacheId); - mManager->AddStreamList(this); + mManager->AddStreamList(*this); for (uint32_t i = 0; i < mList.Length(); ++i) { mManager->AddRefBodyId(mList[i].mId); @@ -149,7 +149,7 @@ StreamList::~StreamList() { NS_ASSERT_OWNINGTHREAD(StreamList); MOZ_DIAGNOSTIC_ASSERT(!mStreamControl); if (mActivated) { - mManager->RemoveStreamList(this); + mManager->RemoveStreamList(*this); for (uint32_t i = 0; i < mList.Length(); ++i) { mManager->ReleaseBodyId(mList[i].mId); }