From 108fea60b51d382d1fc73cd1dbc04b07879f362e Mon Sep 17 00:00:00 2001 From: Tim Huang Date: Thu, 23 May 2024 14:10:44 +0000 Subject: [PATCH] Bug 1894380 - Fix the nsUrlClassifierPrefixSet destructor. r=dimi Differential Revision: https://phabricator.services.mozilla.com/D210625 --- toolkit/components/url-classifier/nsUrlClassifierPrefixSet.cpp | 2 ++ toolkit/components/url-classifier/nsUrlClassifierPrefixSet.h | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/toolkit/components/url-classifier/nsUrlClassifierPrefixSet.cpp b/toolkit/components/url-classifier/nsUrlClassifierPrefixSet.cpp index 20b55ea150c3..1d9a70cb281a 100644 --- a/toolkit/components/url-classifier/nsUrlClassifierPrefixSet.cpp +++ b/toolkit/components/url-classifier/nsUrlClassifierPrefixSet.cpp @@ -37,6 +37,8 @@ nsUrlClassifierPrefixSet::Init(const nsACString& aName) { } nsUrlClassifierPrefixSet::~nsUrlClassifierPrefixSet() { + MutexAutoLock lock(mLock); + for (uint32_t i = 0; i < mIndexDeltas.Length(); i++) { mIndexDeltas[i].Clear(); } diff --git a/toolkit/components/url-classifier/nsUrlClassifierPrefixSet.h b/toolkit/components/url-classifier/nsUrlClassifierPrefixSet.h index dac631359e8f..3a9f22c587b2 100644 --- a/toolkit/components/url-classifier/nsUrlClassifierPrefixSet.h +++ b/toolkit/components/url-classifier/nsUrlClassifierPrefixSet.h @@ -51,7 +51,7 @@ class nsUrlClassifierPrefixSet final : public nsIUrlClassifierPrefixSet { friend class mozilla::safebrowsing::VariableLengthPrefixSet; private: - virtual ~nsUrlClassifierPrefixSet(); + virtual ~nsUrlClassifierPrefixSet() MOZ_REQUIRES(mLock); static const uint32_t DELTAS_LIMIT = 120; static const uint32_t MAX_INDEX_DIFF = (1 << 16);