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 | 5c2a1f741e133fcad4782b855a18d3b220243b11 (patch) | |
tree | 10c092f7e197a701fe23f7a8bd8b0ba7a2aacafd | |
parent | 592d26eafab66ba6288c09b66068c67ab2764c35 (diff) |
[libclang] Do the ConcurrencyCheck at the beginning of clang_findReferencesInFile.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145455 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | tools/libclang/CIndexHigh.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/tools/libclang/CIndexHigh.cpp b/tools/libclang/CIndexHigh.cpp index a2a585454e..a4f85b4c12 100644 --- a/tools/libclang/CIndexHigh.cpp +++ b/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), |