mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-10-31 19:47:32 +09:00
Issue #316 - Make the memory GC performance object conditional (WIP)
This was only added for GCubench and likely interfering with building without devtools-server.
This commit is contained in:
parent
639a4913b3
commit
1e553d0e73
11 changed files with 36 additions and 0 deletions
|
|
@ -96,8 +96,10 @@ public:
|
|||
|
||||
IMPL_EVENT_HANDLER(resourcetimingbufferfull)
|
||||
|
||||
#ifdef MOZ_DEVTOOLS_SERVER
|
||||
virtual void GetMozMemory(JSContext *aCx,
|
||||
JS::MutableHandle<JSObject*> aObj) = 0;
|
||||
#endif
|
||||
|
||||
virtual nsDOMNavigationTiming* GetDOMTiming() const = 0;
|
||||
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@
|
|||
namespace mozilla {
|
||||
namespace dom {
|
||||
|
||||
#ifdef MOZ_DEVTOOLS_SERVER
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(PerformanceMainThread)
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(PerformanceMainThread,
|
||||
|
|
@ -36,6 +37,10 @@ NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
|||
|
||||
NS_IMPL_ADDREF_INHERITED(PerformanceMainThread, Performance)
|
||||
NS_IMPL_RELEASE_INHERITED(PerformanceMainThread, Performance)
|
||||
#else
|
||||
NS_IMPL_CYCLE_COLLECTION_INHERITED(PerformanceMainThread, Performance
|
||||
mTiming, mNavigation, mDocEntry)
|
||||
#endif
|
||||
|
||||
// QueryInterface implementation for PerformanceMainThread
|
||||
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(PerformanceMainThread)
|
||||
|
|
@ -55,9 +60,12 @@ PerformanceMainThread::PerformanceMainThread(nsPIDOMWindowInner* aWindow,
|
|||
|
||||
PerformanceMainThread::~PerformanceMainThread()
|
||||
{
|
||||
#ifdef MOZ_DEVTOOLS_SERVER
|
||||
mozilla::DropJSObjects(this);
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef MOZ_DEVTOOLS_SERVER
|
||||
void
|
||||
PerformanceMainThread::GetMozMemory(JSContext *aCx,
|
||||
JS::MutableHandle<JSObject*> aObj)
|
||||
|
|
@ -71,6 +79,7 @@ PerformanceMainThread::GetMozMemory(JSContext *aCx,
|
|||
|
||||
aObj.set(mMozMemory);
|
||||
}
|
||||
#endif
|
||||
|
||||
PerformanceTiming*
|
||||
PerformanceMainThread::Timing()
|
||||
|
|
|
|||
|
|
@ -20,8 +20,12 @@ public:
|
|||
nsITimedChannel* aChannel);
|
||||
|
||||
NS_DECL_ISUPPORTS_INHERITED
|
||||
#ifdef MOZ_DEVTOOLS_SERVER
|
||||
NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_INHERITED(PerformanceMainThread,
|
||||
Performance)
|
||||
#else
|
||||
NS_DECL_CYCLE_COLLECTION_CLASS_INHERITED(PerformanceMainThread, Performance)
|
||||
#endif
|
||||
|
||||
virtual PerformanceTiming* Timing() override;
|
||||
|
||||
|
|
@ -34,8 +38,10 @@ public:
|
|||
|
||||
DOMHighResTimeStamp CreationTime() const override;
|
||||
|
||||
#ifdef MOZ_DEVTOOLS_SERVER
|
||||
virtual void GetMozMemory(JSContext *aCx,
|
||||
JS::MutableHandle<JSObject*> aObj) override;
|
||||
#endif
|
||||
|
||||
virtual nsDOMNavigationTiming* GetDOMTiming() const override
|
||||
{
|
||||
|
|
@ -79,7 +85,9 @@ protected:
|
|||
nsCOMPtr<nsITimedChannel> mChannel;
|
||||
RefPtr<PerformanceTiming> mTiming;
|
||||
RefPtr<PerformanceNavigation> mNavigation;
|
||||
#ifdef MOZ_DEVTOOLS_SERVER
|
||||
JS::Heap<JSObject*> mMozMemory;
|
||||
#endif
|
||||
};
|
||||
|
||||
} // namespace dom
|
||||
|
|
|
|||
|
|
@ -43,11 +43,13 @@ public:
|
|||
|
||||
DOMHighResTimeStamp CreationTime() const override;
|
||||
|
||||
#ifdef MOZ_DEVTOOLS_SERVER
|
||||
virtual void GetMozMemory(JSContext *aCx,
|
||||
JS::MutableHandle<JSObject*> aObj) override
|
||||
{
|
||||
MOZ_CRASH("This should not be called on workers.");
|
||||
}
|
||||
#endif
|
||||
|
||||
virtual nsDOMNavigationTiming* GetDOMTiming() const override
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue