summaryrefslogtreecommitdiffstats
path: root/clang
diff options
context:
space:
mode:
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>2013-01-16 17:04:31 +0000
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>2013-01-16 17:04:31 +0000
commitfbd7c2d3b2ae2447c933c55a9bdb07d4f01bd95e (patch)
tree740a7512dd4b6a37f8f0f43de8586f9c96ecd951 /clang
parent69987d5415f2260540be1cafa460362ad74ae849 (diff)
downloadbcm5719-llvm-fbd7c2d3b2ae2447c933c55a9bdb07d4f01bd95e.tar.gz
bcm5719-llvm-fbd7c2d3b2ae2447c933c55a9bdb07d4f01bd95e.zip
[libclang] In clang_getCursorType, don't crash if the translation unit is not
set on the cursor; return a null type in such a case. llvm-svn: 172625
Diffstat (limited to 'clang')
-rw-r--r--clang/tools/libclang/CXType.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/tools/libclang/CXType.cpp b/clang/tools/libclang/CXType.cpp
index 88c0e511811..d7751d20717 100644
--- a/clang/tools/libclang/CXType.cpp
+++ b/clang/tools/libclang/CXType.cpp
@@ -131,6 +131,9 @@ CXType clang_getCursorType(CXCursor C) {
using namespace cxcursor;
CXTranslationUnit TU = cxcursor::getCursorTU(C);
+ if (!TU)
+ return MakeCXType(QualType(), TU);
+
ASTContext &Context = static_cast<ASTUnit *>(TU->TUData)->getASTContext();
if (clang_isExpression(C.kind)) {
QualType T = cxcursor::getCursorExpr(C)->getType();
OpenPOWER on IntegriCloud