diff options
author | Dmitri Gribenko <gribozavr@gmail.com> | 2014-02-11 14:34:14 +0000 |
---|---|---|
committer | Dmitri Gribenko <gribozavr@gmail.com> | 2014-02-11 14:34:14 +0000 |
commit | 256454fdaa4d3d044a80c2991b210ca3d2bf2a24 (patch) | |
tree | 9b5b2b53a26df69747a82bf429ba63abd5332635 /clang/tools/libclang/CIndexCodeCompletion.cpp | |
parent | e5a447d947ebbd622757fb19e424c0ee5445bbcb (diff) | |
download | bcm5719-llvm-256454fdaa4d3d044a80c2991b210ca3d2bf2a24.tar.gz bcm5719-llvm-256454fdaa4d3d044a80c2991b210ca3d2bf2a24.zip |
libclang: audit all APIs that accept a CXTranslationUnit to make sure that
checks for invalid translation unit are in place. Also, while there, add log
output for this case.
llvm-svn: 201155
Diffstat (limited to 'clang/tools/libclang/CIndexCodeCompletion.cpp')
-rw-r--r-- | clang/tools/libclang/CIndexCodeCompletion.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/clang/tools/libclang/CIndexCodeCompletion.cpp b/clang/tools/libclang/CIndexCodeCompletion.cpp index 04adb590498..0a978566f94 100644 --- a/clang/tools/libclang/CIndexCodeCompletion.cpp +++ b/clang/tools/libclang/CIndexCodeCompletion.cpp @@ -680,7 +680,12 @@ void clang_codeCompleteAt_Impl(void *UserData) { #endif bool EnableLogging = getenv("LIBCLANG_CODE_COMPLETION_LOGGING") != 0; - + + if (cxtu::isNotUseableTU(TU)) { + LOG_BAD_TU(TU); + return; + } + ASTUnit *AST = cxtu::getASTUnit(TU); if (!AST) return; |