summaryrefslogtreecommitdiff
path: root/indra/llcommon/llinstancetracker.cpp
diff options
context:
space:
mode:
authorbrad kittenbrink <brad@lindenlab.com>2011-03-09 17:01:08 -0800
committerbrad kittenbrink <brad@lindenlab.com>2011-03-09 17:01:08 -0800
commitb9a9b0017dd4714cbca4b0ddb69ed5e6b2f09528 (patch)
tree10c9fb8b778e31296d0e70c05bac7cec837d9b0f /indra/llcommon/llinstancetracker.cpp
parent30a772c5f190827d10a552fccee0252765be429a (diff)
Fix for "doubleton" error using LLInstanceTracker across shared library boundaries.
Diffstat (limited to 'indra/llcommon/llinstancetracker.cpp')
-rw-r--r--indra/llcommon/llinstancetracker.cpp17
1 files changed, 14 insertions, 3 deletions
diff --git a/indra/llcommon/llinstancetracker.cpp b/indra/llcommon/llinstancetracker.cpp
index 89bc6cca39..f576204511 100644
--- a/indra/llcommon/llinstancetracker.cpp
+++ b/indra/llcommon/llinstancetracker.cpp
@@ -32,6 +32,17 @@
// external library headers
// other Linden headers
-// llinstancetracker.h is presently header-only. This file exists only because our CMake
-// test macro ADD_BUILD_TEST requires it.
-int dummy = 0;
+//static
+void * & LLInstanceTrackerBase::getInstances(std::type_info const & info)
+{
+ static std::map<std::string, void *> instances;
+
+ std::string k = info.name();
+ if(instances.find(k) == instances.end())
+ {
+ instances[k] = NULL;
+ }
+
+ return instances[k];
+}
+