diff options
author | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2011-10-27 14:52:17 -0400 |
---|---|---|
committer | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2011-10-27 14:52:17 -0400 |
commit | 1e70d53b198e15a85138a8f0ebdf6f77f070f916 (patch) | |
tree | 49d58bf6cd6584834b6e91688ad8bfb34bd38cff /indra/llcommon | |
parent | 0c84957d312bc3dc31fdb5711317157df73b72e6 (diff) | |
parent | 1b173ed82b65c7bb5f5d5294847a721b64f8cf35 (diff) |
merge
Diffstat (limited to 'indra/llcommon')
-rw-r--r-- | indra/llcommon/llinstancetracker.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/indra/llcommon/llinstancetracker.h b/indra/llcommon/llinstancetracker.h index 5a3990a8df..34d841a4e0 100644 --- a/indra/llcommon/llinstancetracker.h +++ b/indra/llcommon/llinstancetracker.h @@ -193,7 +193,12 @@ public: } protected: - LLInstanceTracker(KEY key) { add_(key); } + LLInstanceTracker(KEY key) + { + // make sure static data outlives all instances + getStatic(); + add_(key); + } virtual ~LLInstanceTracker() { // it's unsafe to delete instances of this type while all instances are being iterated over. @@ -281,7 +286,8 @@ public: protected: LLInstanceTracker() { - // it's safe but unpredictable to create instances of this type while all instances are being iterated over. I hate unpredictable. This assert will probably be turned on early in the next development cycle. + // make sure static data outlives all instances + getStatic(); getSet_().insert(static_cast<T*>(this)); } virtual ~LLInstanceTracker() |