From: Torok Edwin Date: Mon, 31 Aug 2009 16:12:29 +0000 (+0000) Subject: Fix ExplicitSymbols leak. X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=72ddf7b555a5a32c6f2330f9733bb8d036f971eb;p=oota-llvm.git Fix ExplicitSymbols leak. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80589 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/System/DynamicLibrary.cpp b/lib/System/DynamicLibrary.cpp index 669422c8427..6efab948fa7 100644 --- a/lib/System/DynamicLibrary.cpp +++ b/lib/System/DynamicLibrary.cpp @@ -25,6 +25,13 @@ // Collection of symbol name/value pairs to be searched prior to any libraries. static std::map *ExplicitSymbols = 0; +static struct ExplicitSymbolsDeleter { + ~ExplicitSymbolsDeleter() { + if (ExplicitSymbols) + delete ExplicitSymbols; + } +} Dummy; + void llvm::sys::DynamicLibrary::AddSymbol(const char* symbolName, void *symbolValue) { if (ExplicitSymbols == 0)