summaryrefslogtreecommitdiffstats
path: root/clang/tools/libclang/CIndexDiagnostic.cpp
diff options
context:
space:
mode:
authorDmitri Gribenko <gribozavr@gmail.com>2014-02-12 14:17:58 +0000
committerDmitri Gribenko <gribozavr@gmail.com>2014-02-12 14:17:58 +0000
commit371c217b3f47c8e06dfbc7a86882e60d5059bba9 (patch)
tree80d447ce03a0ed45425c366731a81bf6f43799cf /clang/tools/libclang/CIndexDiagnostic.cpp
parent254c7636cf4068b6bffa195e5a1ef2ccdb478f06 (diff)
downloadbcm5719-llvm-371c217b3f47c8e06dfbc7a86882e60d5059bba9.tar.gz
bcm5719-llvm-371c217b3f47c8e06dfbc7a86882e60d5059bba9.zip
libclang: fix a crash in clang_disposeDiagnosticSet when it is passed a NULL argument
llvm-svn: 201236
Diffstat (limited to 'clang/tools/libclang/CIndexDiagnostic.cpp')
-rw-r--r--clang/tools/libclang/CIndexDiagnostic.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/clang/tools/libclang/CIndexDiagnostic.cpp b/clang/tools/libclang/CIndexDiagnostic.cpp
index 0c327f611a2..d3450d5dece 100644
--- a/clang/tools/libclang/CIndexDiagnostic.cpp
+++ b/clang/tools/libclang/CIndexDiagnostic.cpp
@@ -450,9 +450,10 @@ CXString clang_getDiagnosticFixIt(CXDiagnostic Diag, unsigned FixIt,
}
void clang_disposeDiagnosticSet(CXDiagnosticSet Diags) {
- CXDiagnosticSetImpl *D = static_cast<CXDiagnosticSetImpl*>(Diags);
- if (D->isExternallyManaged())
- delete D;
+ if (CXDiagnosticSetImpl *D = static_cast<CXDiagnosticSetImpl *>(Diags)) {
+ if (D->isExternallyManaged())
+ delete D;
+ }
}
CXDiagnostic clang_getDiagnosticInSet(CXDiagnosticSet Diags,
OpenPOWER on IntegriCloud