From d4bb5033b251e8afb612158011ebd89082664345 Mon Sep 17 00:00:00 2001 From: Nikolai Kosjar Date: Mon, 19 Jan 2015 13:14:45 +0100 Subject: CppTools: Remove separate indexing revision For indexing we used a custom revision that was updated on each modelManager BuiltinIndexingSupport::refreshSourceFiles() call. This could lead to rejection of updated documents triggered by refactoring actions, like for the following case: 1. Open a project containing a.h and a.cpp 2. Open a.cpp, insert some new lines, save and close the document 3. Open a.h and rename a function that is defined in a.cpp --> The refactoring action modifies a.h and a.cpp, so re-indexing of those is triggered. Since a.cpp has already a higher revision (step 2) than the updated document, the updated document is discarded. As a consequence find usages and follow symbol fails for the renamed function. Now the document call back provided to CppSourceProcessor is responsible for updating the document revision based on the latest revision in the global snapshot. Change-Id: I4dfa0a4d34991655acfa749109f00c47b0fbfdbe Reviewed-by: Orgad Shaneh Reviewed-by: Erik Verbruggen Reviewed-by: Eike Ziller --- src/plugins/cpptools/cppsourceprocessor.h | 2 -- 1 file changed, 2 deletions(-) (limited to 'src/plugins/cpptools/cppsourceprocessor.h') diff --git a/src/plugins/cpptools/cppsourceprocessor.h b/src/plugins/cpptools/cppsourceprocessor.h index 3d8053bf26..cd5f160897 100644 --- a/src/plugins/cpptools/cppsourceprocessor.h +++ b/src/plugins/cpptools/cppsourceprocessor.h @@ -65,7 +65,6 @@ public: CppSourceProcessor(const CPlusPlus::Snapshot &snapshot, DocumentCallback documentFinished); ~CppSourceProcessor(); - void setRevision(unsigned revision); void setWorkingCopy(const CppTools::WorkingCopy &workingCopy); void setHeaderPaths(const ProjectPart::HeaderPaths &headerPaths); void setLanguageFeatures(CPlusPlus::LanguageFeatures languageFeatures); @@ -124,7 +123,6 @@ private: CPlusPlus::Document::Ptr m_currentDoc; QSet m_todo; QSet m_processed; - unsigned m_revision; QHash m_fileNameCache; QTextCodec *m_defaultCodec; }; -- cgit v1.2.1