diff options
-rw-r--r-- | indra/llcommon/llsingleton.h | 7 | ||||
-rw-r--r-- | indra/newview/llvocache.h | 2 |
2 files changed, 7 insertions, 2 deletions
diff --git a/indra/llcommon/llsingleton.h b/indra/llcommon/llsingleton.h index 1e87d9bd7b..b9cb8e3d41 100644 --- a/indra/llcommon/llsingleton.h +++ b/indra/llcommon/llsingleton.h @@ -67,6 +67,11 @@ private: INITIALIZED, DELETED } EInitState; + + static DERIVED_TYPE* constructSingleton() + { + return new DERIVED_TYPE(); + } // stores pointer to singleton instance struct SingletonLifetimeManager @@ -79,7 +84,7 @@ private: static void construct() { sData.mInitState = CONSTRUCTING; - sData.mInstance = new DERIVED_TYPE(); + sData.mInstance = constructSingleton(); sData.mInitState = INITIALIZING; } diff --git a/indra/newview/llvocache.h b/indra/newview/llvocache.h index fc0634f133..7409b94d60 100644 --- a/indra/newview/llvocache.h +++ b/indra/newview/llvocache.h @@ -163,7 +163,6 @@ public: class LLVOCache : public LLSingleton<LLVOCache> { private: - friend LLSingleton<LLVOCache>; struct HeaderEntryInfo { HeaderEntryInfo() : mIndex(0), mHandle(0), mTime(0) {} @@ -194,6 +193,7 @@ private: typedef std::set<HeaderEntryInfo*, header_entry_less> header_entry_queue_t; typedef std::map<U64, HeaderEntryInfo*> handle_entry_map_t; private: + friend class LLSingleton<LLVOCache>; LLVOCache() ; public: |