summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2010-07-23 23:27:43 +0000
committerOwen Anderson <resistor@mac.com>2010-07-23 23:27:43 +0000
commit448e1874999d2a510d3d2d91f0a17f3a7cb4f4eb (patch)
tree326aa906471218ae1c81b616dd39cec55ff45923 /include
parent5f2f69b6481cab766723edc74825eaa1143f4f62 (diff)
downloadllvm-448e1874999d2a510d3d2d91f0a17f3a7cb4f4eb.tar.gz
llvm-448e1874999d2a510d3d2d91f0a17f3a7cb4f4eb.tar.bz2
llvm-448e1874999d2a510d3d2d91f0a17f3a7cb4f4eb.tar.xz
Fix use-after-free error.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109288 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/Support/IRReader.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/include/llvm/Support/IRReader.h b/include/llvm/Support/IRReader.h
index fe47c05755..3da6e85e25 100644
--- a/include/llvm/Support/IRReader.h
+++ b/include/llvm/Support/IRReader.h
@@ -79,10 +79,10 @@ namespace llvm {
(const unsigned char *)Buffer->getBufferEnd())) {
std::string ErrMsg;
Module *M = ParseBitcodeFile(Buffer, Context, &ErrMsg);
- // ParseBitcodeFile does not take ownership of the Buffer.
- delete Buffer;
if (M == 0)
Err = SMDiagnostic(Buffer->getBufferIdentifier(), ErrMsg);
+ // ParseBitcodeFile does not take ownership of the Buffer.
+ delete Buffer;
return M;
}