From 13be55fe4c38688e7a0a188232c6bce3d1cc19bc Mon Sep 17 00:00:00 2001 From: "warren%netscape.com" Date: Tue, 10 Aug 1999 19:54:17 +0000 Subject: [PATCH] Added GetGlobalAllocator. git-svn-id: svn://10.0.0.236/trunk@43009 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/xpcom/base/nsAllocator.cpp | 10 +++++++++- mozilla/xpcom/base/nsIAllocator.h | 1 + 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/mozilla/xpcom/base/nsAllocator.cpp b/mozilla/xpcom/base/nsAllocator.cpp index 776374f5907..99f8b1ebe3e 100644 --- a/mozilla/xpcom/base/nsAllocator.cpp +++ b/mozilla/xpcom/base/nsAllocator.cpp @@ -165,7 +165,15 @@ void* nsAllocator::Clone(const void* ptr, PRUint32 size) void* p = mAllocator->Alloc(size); if(p) memcpy(p, ptr, size); return p; -} +} + +NS_EXPORT nsIAllocator* +nsAllocator::GetGlobalAllocator() +{ + if(!EnsureAllocator()) return nsnull; + NS_ADDREF(mAllocator); + return mAllocator; +} // private: diff --git a/mozilla/xpcom/base/nsIAllocator.h b/mozilla/xpcom/base/nsIAllocator.h index 0f5ddd37797..c458d036232 100644 --- a/mozilla/xpcom/base/nsIAllocator.h +++ b/mozilla/xpcom/base/nsIAllocator.h @@ -95,6 +95,7 @@ public: static NS_EXPORT void Free(void* ptr); static NS_EXPORT void HeapMinimize(); static NS_EXPORT void* Clone(const void* ptr, PRUint32 size); + static NS_EXPORT nsIAllocator* GetGlobalAllocator(); private: nsAllocator(); // not implemented static PRBool EnsureAllocator() {return mAllocator || FetchAllocator();}