diff --git a/src/plugins/cpptools/cppmodelmanager.cpp b/src/plugins/cpptools/cppmodelmanager.cpp index 568df9a4a43f3af2b488cf8c75a48b5d08be4c2a..e382171c398aebdcc2809e87d5841b2c624d3789 100644 --- a/src/plugins/cpptools/cppmodelmanager.cpp +++ b/src/plugins/cpptools/cppmodelmanager.cpp @@ -511,17 +511,17 @@ void CppPreprocessor::sourceNeeded(unsigned line, const QString &fileName, Inclu return; QString absoluteFileName = resolveFile(fileName, type); + absoluteFileName = QDir::cleanPath(absoluteFileName); + if (m_currentDoc && !absoluteFileName.isEmpty()) + m_currentDoc->addIncludeFile(absoluteFileName, line); if (m_included.contains(absoluteFileName)) return; // we've already seen this file. m_included.insert(absoluteFileName); - absoluteFileName = QDir::cleanPath(absoluteFileName); unsigned editorRevision = 0; QString contents; getFileContents(absoluteFileName, &contents, &editorRevision); if (m_currentDoc) { - m_currentDoc->addIncludeFile(absoluteFileName, line); - if (contents.isEmpty() && ! QFileInfo(absoluteFileName).isAbsolute()) { QString msg = QCoreApplication::translate( "CppPreprocessor", "%1: No such file or directory").arg(fileName);