commit 4fb3fa392553cf13c6ce2e782c8549d4b2c45217
parent bc6ccb4c0628ba4148b39eb0da8c1c4317206906
Author: Paul Bone <paul@bone.id.au>
Date: Tue, 9 Dec 2025 03:12:41 +0000
Bug 1996828 - MemoryTelemetry doesn't need to inherrit from nsISupports r=toolkit-telemetry-reviewers,chutten
Differential Revision: https://phabricator.services.mozilla.com/D274875
Diffstat:
2 files changed, 5 insertions(+), 7 deletions(-)
diff --git a/xpcom/base/MemoryTelemetry.cpp b/xpcom/base/MemoryTelemetry.cpp
@@ -116,8 +116,6 @@ class TimeStampWindow {
AutoCleanLinkedList<Event> mEvents;
};
-NS_IMPL_ISUPPORTS(MemoryTelemetry, nsISupportsWeakReference)
-
MemoryTelemetry::MemoryTelemetry()
: mThreadPool(do_GetService(NS_STREAMTRANSPORTSERVICE_CONTRACTID)) {
for (auto& val : gPrevValues) {
@@ -125,6 +123,8 @@ MemoryTelemetry::MemoryTelemetry()
}
}
+MemoryTelemetry::~MemoryTelemetry() {}
+
static StaticRefPtr<MemoryTelemetry> sInstance;
/* static */ RefPtr<MemoryTelemetry> MemoryTelemetry::Create() {
diff --git a/xpcom/base/MemoryTelemetry.h b/xpcom/base/MemoryTelemetry.h
@@ -12,7 +12,6 @@
#include "mozilla/Result.h"
#include "nsITimer.h"
#include "nsTArray.h"
-#include "nsWeakReference.h"
#include <functional>
@@ -30,9 +29,9 @@ enum class ResponseRejectReason;
* Periodically gathers memory usage metrics after cycle collection, and
* populates telemetry histograms with their values.
*/
-class MemoryTelemetry final : public nsSupportsWeakReference {
+class MemoryTelemetry final {
public:
- NS_DECL_THREADSAFE_ISUPPORTS
+ NS_INLINE_DECL_THREADSAFE_REFCOUNTING(MemoryTelemetry)
static RefPtr<MemoryTelemetry> Create();
@@ -56,8 +55,7 @@ class MemoryTelemetry final : public nsSupportsWeakReference {
private:
MemoryTelemetry();
-
- ~MemoryTelemetry() = default;
+ ~MemoryTelemetry();
static Result<uint32_t, nsresult> GetOpenTabsCount();