llvm-nm: Don't leak bitcode buffers.
authorBenjamin Kramer <benny.kra@googlemail.com>
Mon, 10 Oct 2011 13:10:04 +0000 (13:10 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Mon, 10 Oct 2011 13:10:04 +0000 (13:10 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141534 91177308-0d34-0410-b5e6-96231b3b80d8

tools/llvm-nm/llvm-nm.cpp

index 10cf45072c27fda87d7d8d15050c15c9a81988af..550ca4f13fac5fa766333e99eb88f9f6cb951c41 100644 (file)
@@ -330,10 +330,10 @@ static void DumpSymbolNamesFromFile(std::string &Filename) {
         OwningPtr<Binary> child;
         if (error_code ec = i->getAsBinary(child)) {
           // Try opening it as a bitcode file.
-          MemoryBuffer *buff = i->getBuffer();
+          OwningPtr<MemoryBuffer> buff(i->getBuffer());
           Module *Result = 0;
           if (buff)
-            Result = ParseBitcodeFile(buff, Context, &ErrorMessage);
+            Result = ParseBitcodeFile(buff.get(), Context, &ErrorMessage);
 
           if (Result) {
             DumpSymbolNamesFromModule(Result);