Bug 1362814 - Part 2: Move GeckoProfilerReporter to its own header; r=mstange

This allows us to get rid of the nsIMemoryReporter.h inclusion in GeckoProfiler.h.
That brings XPCOM string headers with it.
This commit is contained in:
Ehsan Akhgari 2017-05-07 21:43:41 -04:00
parent 9fc6c978e3
commit 8a04849cee
5 changed files with 30 additions and 16 deletions

View File

@ -17,6 +17,7 @@
#include "mozilla/UniquePtr.h"
#include "mozilla/Vector.h"
#include "GeckoProfiler.h"
#include "GeckoProfilerReporter.h"
#include "ProfilerIOInterposeObserver.h"
#include "mozilla/StackWalk.h"
#include "mozilla/StaticPtr.h"

View File

@ -117,6 +117,7 @@ include('/ipc/chromium/chromium-config.mozbuild')
EXPORTS += [
'public/GeckoProfiler.h',
'public/GeckoProfilerReporter.h',
'public/ProfilerControllingProcess.h',
]

View File

@ -392,7 +392,6 @@ PROFILER_FUNC(void* profiler_get_stack_top(), nullptr)
#include "mozilla/Sprintf.h"
#include "mozilla/ThreadLocal.h"
#include "nscore.h"
#include "nsIMemoryReporter.h"
// Make sure that we can use std::min here without the Windows headers messing with us.
#ifdef min
@ -512,21 +511,6 @@ PseudoStack* profiler_get_pseudo_stack();
void profiler_set_js_context(JSContext* aCx);
void profiler_clear_js_context();
class GeckoProfilerReporter final : public nsIMemoryReporter
{
public:
NS_DECL_ISUPPORTS
GeckoProfilerReporter() {}
NS_IMETHOD
CollectReports(nsIHandleReportCallback* aHandleReport,
nsISupports* aData, bool aAnonymize) override;
private:
~GeckoProfilerReporter() {}
};
#endif // defined(MOZ_GECKO_PROFILER)
namespace mozilla {

View File

@ -0,0 +1,27 @@
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef GeckoProfilerReporter_h
#define GeckoProfilerReporter_h
#include "nsIMemoryReporter.h"
class GeckoProfilerReporter final : public nsIMemoryReporter
{
public:
NS_DECL_ISUPPORTS
GeckoProfilerReporter() {}
NS_IMETHOD
CollectReports(nsIHandleReportCallback* aHandleReport,
nsISupports* aData, bool aAnonymize) override;
private:
~GeckoProfilerReporter() {}
};
#endif

View File

@ -17,6 +17,7 @@
#include "nsIObserverService.h"
#include "nsIGlobalObject.h"
#include "nsIXPConnect.h"
#include "GeckoProfilerReporter.h"
#if defined(XP_UNIX) || defined(MOZ_DMD)
#include "nsMemoryInfoDumper.h"
#endif