diff options
author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2011-11-29 23:21:50 +0000 |
---|---|---|
committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2011-11-29 23:21:50 +0000 |
commit | ebbb20628a54c7f123bfa3c1b96c68d15c0c211a (patch) | |
tree | a0c36e27ef071a5456bb3abed183af04475a3053 /clang/tools/libclang/CIndexHigh.cpp | |
parent | e1154eef0b465b382a74d159ce70b1e81ffaf77c (diff) | |
download | bcm5719-llvm-ebbb20628a54c7f123bfa3c1b96c68d15c0c211a.tar.gz bcm5719-llvm-ebbb20628a54c7f123bfa3c1b96c68d15c0c211a.zip |
[libclang] Do the ConcurrencyCheck at the beginning of clang_findReferencesInFile.
llvm-svn: 145455
Diffstat (limited to 'clang/tools/libclang/CIndexHigh.cpp')
-rw-r--r-- | clang/tools/libclang/CIndexHigh.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/clang/tools/libclang/CIndexHigh.cpp b/clang/tools/libclang/CIndexHigh.cpp index a2a585454e5..a4f85b4c12e 100644 --- a/clang/tools/libclang/CIndexHigh.cpp +++ b/clang/tools/libclang/CIndexHigh.cpp @@ -343,6 +343,12 @@ void clang_findReferencesInFile(CXCursor cursor, CXFile file, return; } + ASTUnit *CXXUnit = cxcursor::getCursorASTUnit(cursor); + if (!CXXUnit) + return; + + ASTUnit::ConcurrencyCheck Check(*CXXUnit); + if (cursor.kind == CXCursor_MacroDefinition || cursor.kind == CXCursor_MacroExpansion) { findMacroRefsInFile(cxcursor::getCursorTU(cursor), @@ -370,9 +376,6 @@ void clang_findReferencesInFile(CXCursor cursor, CXFile file, return; } - ASTUnit *CXXUnit = cxcursor::getCursorASTUnit(cursor); - ASTUnit::ConcurrencyCheck Check(*CXXUnit); - findIdRefsInFile(cxcursor::getCursorTU(cursor), refCursor, static_cast<const FileEntry *>(file), |