summaryrefslogtreecommitdiff
path: root/indra/llcommon/llheteromap.cpp
diff options
context:
space:
mode:
authorOz Linden <oz@lindenlab.com>2017-02-02 15:49:16 -0500
committerOz Linden <oz@lindenlab.com>2017-02-02 15:49:16 -0500
commit1925fd2b8b9216e5d9388e6a0c077c99aa782cad (patch)
tree2507c9889eb825302f7c3f1650b85e6208b04e4e /indra/llcommon/llheteromap.cpp
parent7f544db197fcaa8a697ee9d9694d11b297a20266 (diff)
parent080744d8990e6b18a80858803a20a5ec87020d82 (diff)
merge changes for 5.0.1-release
Diffstat (limited to 'indra/llcommon/llheteromap.cpp')
-rw-r--r--indra/llcommon/llheteromap.cpp32
1 files changed, 32 insertions, 0 deletions
diff --git a/indra/llcommon/llheteromap.cpp b/indra/llcommon/llheteromap.cpp
new file mode 100644
index 0000000000..7c19196e0c
--- /dev/null
+++ b/indra/llcommon/llheteromap.cpp
@@ -0,0 +1,32 @@
+/**
+ * @file llheteromap.cpp
+ * @author Nat Goodspeed
+ * @date 2016-10-12
+ * @brief Implementation for llheteromap.
+ *
+ * $LicenseInfo:firstyear=2016&license=viewerlgpl$
+ * Copyright (c) 2016, Linden Research, Inc.
+ * $/LicenseInfo$
+ */
+
+// Precompiled header
+#include "linden_common.h"
+// associated header
+#include "llheteromap.h"
+// STL headers
+// std headers
+// external library headers
+// other Linden headers
+
+LLHeteroMap::~LLHeteroMap()
+{
+ // For each entry in our map, we must call its deleter, which is the only
+ // record we have of its original type.
+ for (TypeMap::iterator mi(mMap.begin()), me(mMap.end()); mi != me; ++mi)
+ {
+ // mi->second is the std::pair; mi->second.first is the void*;
+ // mi->second.second points to the deleter function
+ (mi->second.second)(mi->second.first);
+ mi->second.first = NULL;
+ }
+}