Loading docshell/base/BaseHistory.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -49,7 +49,7 @@ bool BaseHistory::CanStore(nsIURI* aURI) { } void BaseHistory::ScheduleVisitedQuery(nsIURI* aURI) { mPendingQueries.PutEntry(aURI); mPendingQueries.Insert(aURI); if (mStartPendingVisitedQueriesScheduled) { return; } Loading @@ -67,7 +67,7 @@ void BaseHistory::ScheduleVisitedQuery(nsIURI* aURI) { } void BaseHistory::CancelVisitedQueryIfPossible(nsIURI* aURI) { mPendingQueries.RemoveEntry(aURI); mPendingQueries.Remove(aURI); // TODO(bug 1591393): It could be worth to make this virtual and allow places // to stop the existing database query? Needs some measurement. } Loading docshell/base/BaseHistory.h +2 −1 Original line number Diff line number Diff line Loading @@ -7,6 +7,7 @@ #include "IHistory.h" #include "mozilla/dom/ContentParent.h" #include "nsTHashSet.h" /* A base class for history implementations that implement link coloring. */ Loading Loading @@ -40,7 +41,7 @@ class BaseHistory : public IHistory { } }; using PendingVisitedQueries = nsTHashtable<nsURIHashKey>; using PendingVisitedQueries = nsTHashSet<nsURIHashKey>; using PendingVisitedResults = nsTArray<mozilla::dom::VisitedQueryResult>; // Starts all the queries in the pending queries list, potentially at the same Loading docshell/base/BrowsingContextGroup.cpp +5 −5 Original line number Diff line number Diff line Loading @@ -53,13 +53,13 @@ BrowsingContextGroup::BrowsingContextGroup(uint64_t aId) : mId(aId) { void BrowsingContextGroup::Register(nsISupports* aContext) { MOZ_DIAGNOSTIC_ASSERT(!mDestroyed); MOZ_DIAGNOSTIC_ASSERT(aContext); mContexts.PutEntry(aContext); mContexts.Insert(aContext); } void BrowsingContextGroup::Unregister(nsISupports* aContext) { MOZ_DIAGNOSTIC_ASSERT(!mDestroyed); MOZ_DIAGNOSTIC_ASSERT(aContext); mContexts.RemoveEntry(aContext); mContexts.Remove(aContext); MaybeDestroy(); } Loading Loading @@ -168,7 +168,7 @@ void BrowsingContextGroup::Subscribe(ContentParent* aProcess) { void BrowsingContextGroup::Unsubscribe(ContentParent* aProcess) { MOZ_DIAGNOSTIC_ASSERT(aProcess); MOZ_DIAGNOSTIC_ASSERT(aProcess->GetRemoteType() != PREALLOC_REMOTE_TYPE); mSubscribers.RemoveEntry(aProcess); mSubscribers.Remove(aProcess); aProcess->RemoveBrowsingContextGroup(this); #ifdef MOZ_DIAGNOSTIC_ASSERT_ENABLED Loading Loading @@ -237,8 +237,8 @@ void BrowsingContextGroup::Destroy() { for (auto& entry : mHosts) { entry.GetData()->RemoveBrowsingContextGroup(this); } for (auto& entry : mSubscribers) { entry.GetKey()->RemoveBrowsingContextGroup(this); for (const auto& key : mSubscribers) { key->RemoveBrowsingContextGroup(this); } mHosts.Clear(); mSubscribers.Clear(); Loading docshell/base/BrowsingContextGroup.h +8 −8 Original line number Diff line number Diff line Loading @@ -12,7 +12,7 @@ #include "nsRefPtrHashtable.h" #include "nsHashKeys.h" #include "nsTArray.h" #include "nsTHashtable.h" #include "nsTHashSet.h" #include "nsWrapperCache.h" #include "nsXULAppAPI.h" Loading Loading @@ -105,9 +105,9 @@ class BrowsingContextGroup final : public nsWrapperCache { template <typename Func> void EachOtherParent(ContentParent* aExcludedParent, Func&& aCallback) { MOZ_DIAGNOSTIC_ASSERT(XRE_IsParentProcess()); for (auto iter = mSubscribers.Iter(); !iter.Done(); iter.Next()) { if (iter.Get()->GetKey() != aExcludedParent) { aCallback(iter.Get()->GetKey()); for (const auto& key : mSubscribers) { if (key != aExcludedParent) { aCallback(key); } } } Loading @@ -117,8 +117,8 @@ class BrowsingContextGroup final : public nsWrapperCache { template <typename Func> void EachParent(Func&& aCallback) { MOZ_DIAGNOSTIC_ASSERT(XRE_IsParentProcess()); for (auto iter = mSubscribers.Iter(); !iter.Done(); iter.Next()) { aCallback(iter.Get()->GetKey()); for (const auto& key : mSubscribers) { aCallback(key); } } Loading Loading @@ -184,7 +184,7 @@ class BrowsingContextGroup final : public nsWrapperCache { // non-discarded contexts within discarded contexts alive. It should be // removed in the future. // FIXME: Consider introducing a better common base than `nsISupports`? nsTHashtable<nsRefPtrHashKey<nsISupports>> mContexts; nsTHashSet<nsRefPtrHashKey<nsISupports>> mContexts; // The set of toplevel browsing contexts in the current BrowsingContextGroup. nsTArray<RefPtr<BrowsingContext>> mToplevels; Loading @@ -206,7 +206,7 @@ class BrowsingContextGroup final : public nsWrapperCache { // process. nsRefPtrHashtable<nsCStringHashKey, ContentParent> mHosts; nsTHashtable<nsRefPtrHashKey<ContentParent>> mSubscribers; nsTHashSet<nsRefPtrHashKey<ContentParent>> mSubscribers; // A queue to store postMessage events during page load, the queue will be // flushed once the page is loaded Loading docshell/base/CanonicalBrowsingContext.cpp +3 −2 Original line number Diff line number Diff line Loading @@ -40,6 +40,7 @@ #include "nsQueryObject.h" #include "nsBrowserStatusFilter.h" #include "nsIBrowser.h" #include "nsTHashSet.h" using namespace mozilla::ipc; Loading Loading @@ -931,7 +932,7 @@ void CanonicalBrowsingContext::NotifyMediaMutedChanged(bool aMuted, uint32_t CanonicalBrowsingContext::CountSiteOrigins( GlobalObject& aGlobal, const Sequence<OwningNonNull<BrowsingContext>>& aRoots) { nsTHashtable<nsCStringHashKey> uniqueSiteOrigins; nsTHashSet<nsCString> uniqueSiteOrigins; for (const auto& root : aRoots) { root->PreOrderWalk([&](BrowsingContext* aContext) { Loading @@ -945,7 +946,7 @@ uint32_t CanonicalBrowsingContext::CountSiteOrigins( if (isContentPrincipal) { nsCString siteOrigin; documentPrincipal->GetSiteOrigin(siteOrigin); uniqueSiteOrigins.PutEntry(siteOrigin); uniqueSiteOrigins.Insert(siteOrigin); } } }); Loading Loading
docshell/base/BaseHistory.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -49,7 +49,7 @@ bool BaseHistory::CanStore(nsIURI* aURI) { } void BaseHistory::ScheduleVisitedQuery(nsIURI* aURI) { mPendingQueries.PutEntry(aURI); mPendingQueries.Insert(aURI); if (mStartPendingVisitedQueriesScheduled) { return; } Loading @@ -67,7 +67,7 @@ void BaseHistory::ScheduleVisitedQuery(nsIURI* aURI) { } void BaseHistory::CancelVisitedQueryIfPossible(nsIURI* aURI) { mPendingQueries.RemoveEntry(aURI); mPendingQueries.Remove(aURI); // TODO(bug 1591393): It could be worth to make this virtual and allow places // to stop the existing database query? Needs some measurement. } Loading
docshell/base/BaseHistory.h +2 −1 Original line number Diff line number Diff line Loading @@ -7,6 +7,7 @@ #include "IHistory.h" #include "mozilla/dom/ContentParent.h" #include "nsTHashSet.h" /* A base class for history implementations that implement link coloring. */ Loading Loading @@ -40,7 +41,7 @@ class BaseHistory : public IHistory { } }; using PendingVisitedQueries = nsTHashtable<nsURIHashKey>; using PendingVisitedQueries = nsTHashSet<nsURIHashKey>; using PendingVisitedResults = nsTArray<mozilla::dom::VisitedQueryResult>; // Starts all the queries in the pending queries list, potentially at the same Loading
docshell/base/BrowsingContextGroup.cpp +5 −5 Original line number Diff line number Diff line Loading @@ -53,13 +53,13 @@ BrowsingContextGroup::BrowsingContextGroup(uint64_t aId) : mId(aId) { void BrowsingContextGroup::Register(nsISupports* aContext) { MOZ_DIAGNOSTIC_ASSERT(!mDestroyed); MOZ_DIAGNOSTIC_ASSERT(aContext); mContexts.PutEntry(aContext); mContexts.Insert(aContext); } void BrowsingContextGroup::Unregister(nsISupports* aContext) { MOZ_DIAGNOSTIC_ASSERT(!mDestroyed); MOZ_DIAGNOSTIC_ASSERT(aContext); mContexts.RemoveEntry(aContext); mContexts.Remove(aContext); MaybeDestroy(); } Loading Loading @@ -168,7 +168,7 @@ void BrowsingContextGroup::Subscribe(ContentParent* aProcess) { void BrowsingContextGroup::Unsubscribe(ContentParent* aProcess) { MOZ_DIAGNOSTIC_ASSERT(aProcess); MOZ_DIAGNOSTIC_ASSERT(aProcess->GetRemoteType() != PREALLOC_REMOTE_TYPE); mSubscribers.RemoveEntry(aProcess); mSubscribers.Remove(aProcess); aProcess->RemoveBrowsingContextGroup(this); #ifdef MOZ_DIAGNOSTIC_ASSERT_ENABLED Loading Loading @@ -237,8 +237,8 @@ void BrowsingContextGroup::Destroy() { for (auto& entry : mHosts) { entry.GetData()->RemoveBrowsingContextGroup(this); } for (auto& entry : mSubscribers) { entry.GetKey()->RemoveBrowsingContextGroup(this); for (const auto& key : mSubscribers) { key->RemoveBrowsingContextGroup(this); } mHosts.Clear(); mSubscribers.Clear(); Loading
docshell/base/BrowsingContextGroup.h +8 −8 Original line number Diff line number Diff line Loading @@ -12,7 +12,7 @@ #include "nsRefPtrHashtable.h" #include "nsHashKeys.h" #include "nsTArray.h" #include "nsTHashtable.h" #include "nsTHashSet.h" #include "nsWrapperCache.h" #include "nsXULAppAPI.h" Loading Loading @@ -105,9 +105,9 @@ class BrowsingContextGroup final : public nsWrapperCache { template <typename Func> void EachOtherParent(ContentParent* aExcludedParent, Func&& aCallback) { MOZ_DIAGNOSTIC_ASSERT(XRE_IsParentProcess()); for (auto iter = mSubscribers.Iter(); !iter.Done(); iter.Next()) { if (iter.Get()->GetKey() != aExcludedParent) { aCallback(iter.Get()->GetKey()); for (const auto& key : mSubscribers) { if (key != aExcludedParent) { aCallback(key); } } } Loading @@ -117,8 +117,8 @@ class BrowsingContextGroup final : public nsWrapperCache { template <typename Func> void EachParent(Func&& aCallback) { MOZ_DIAGNOSTIC_ASSERT(XRE_IsParentProcess()); for (auto iter = mSubscribers.Iter(); !iter.Done(); iter.Next()) { aCallback(iter.Get()->GetKey()); for (const auto& key : mSubscribers) { aCallback(key); } } Loading Loading @@ -184,7 +184,7 @@ class BrowsingContextGroup final : public nsWrapperCache { // non-discarded contexts within discarded contexts alive. It should be // removed in the future. // FIXME: Consider introducing a better common base than `nsISupports`? nsTHashtable<nsRefPtrHashKey<nsISupports>> mContexts; nsTHashSet<nsRefPtrHashKey<nsISupports>> mContexts; // The set of toplevel browsing contexts in the current BrowsingContextGroup. nsTArray<RefPtr<BrowsingContext>> mToplevels; Loading @@ -206,7 +206,7 @@ class BrowsingContextGroup final : public nsWrapperCache { // process. nsRefPtrHashtable<nsCStringHashKey, ContentParent> mHosts; nsTHashtable<nsRefPtrHashKey<ContentParent>> mSubscribers; nsTHashSet<nsRefPtrHashKey<ContentParent>> mSubscribers; // A queue to store postMessage events during page load, the queue will be // flushed once the page is loaded Loading
docshell/base/CanonicalBrowsingContext.cpp +3 −2 Original line number Diff line number Diff line Loading @@ -40,6 +40,7 @@ #include "nsQueryObject.h" #include "nsBrowserStatusFilter.h" #include "nsIBrowser.h" #include "nsTHashSet.h" using namespace mozilla::ipc; Loading Loading @@ -931,7 +932,7 @@ void CanonicalBrowsingContext::NotifyMediaMutedChanged(bool aMuted, uint32_t CanonicalBrowsingContext::CountSiteOrigins( GlobalObject& aGlobal, const Sequence<OwningNonNull<BrowsingContext>>& aRoots) { nsTHashtable<nsCStringHashKey> uniqueSiteOrigins; nsTHashSet<nsCString> uniqueSiteOrigins; for (const auto& root : aRoots) { root->PreOrderWalk([&](BrowsingContext* aContext) { Loading @@ -945,7 +946,7 @@ uint32_t CanonicalBrowsingContext::CountSiteOrigins( if (isContentPrincipal) { nsCString siteOrigin; documentPrincipal->GetSiteOrigin(siteOrigin); uniqueSiteOrigins.PutEntry(siteOrigin); uniqueSiteOrigins.Insert(siteOrigin); } } }); Loading