diff options
author | Erik Verbruggen <erik.verbruggen@digia.com> | 2013-04-11 12:51:06 +0200 |
---|---|---|
committer | Nikolai Kosjar <nikolai.kosjar@digia.com> | 2013-04-16 11:56:18 +0200 |
commit | a0d6df7bd85bf88e4ac3643d97d35e04389f6309 (patch) | |
tree | ea52bcf565d13eacf7646b1b89403e072c3e311e /src/plugins/cpptools/cppmodelmanager.cpp | |
parent | c39b582e58922c8329fff710fb57b7e8fa516a49 (diff) | |
download | qt-creator-a0d6df7bd85bf88e4ac3643d97d35e04389f6309.tar.gz |
C++: also refresh files not in the project when project changes.
System headers and other file which are not explicitly mentioned in the
project must be reparsed when the project changes.
Task-number: QTCREATORBUG-9056
Change-Id: I32f1206d241a078a4d9b15fac5813f365a1ba303
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
Diffstat (limited to 'src/plugins/cpptools/cppmodelmanager.cpp')
-rw-r--r-- | src/plugins/cpptools/cppmodelmanager.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/plugins/cpptools/cppmodelmanager.cpp b/src/plugins/cpptools/cppmodelmanager.cpp index e382171c39..cef667fec0 100644 --- a/src/plugins/cpptools/cppmodelmanager.cpp +++ b/src/plugins/cpptools/cppmodelmanager.cpp @@ -970,10 +970,16 @@ void CppModelManager::updateProjectInfo(const ProjectInfo &pinfo) foreach (const ProjectInfo &projectInfo, m_projects) { foreach (const ProjectPart::Ptr &projectPart, projectInfo.projectParts()) { - foreach (const ProjectFile &cxxFile, projectPart->files) + foreach (const ProjectFile &cxxFile, projectPart->files) { m_srcToProjectPart[cxxFile.path].append(projectPart); + foreach (const QString &fileName, m_snapshot.allIncludesForDocument(cxxFile.path)) + m_snapshot.remove(fileName); + m_snapshot.remove(cxxFile.path); + } } } + + m_snapshot.remove(configurationFileName()); } if (!qgetenv("QTCREATOR_DUMP_PROJECT_INFO").isEmpty()) |