diff options
author | Erik Verbruggen <erik.verbruggen@digia.com> | 2014-06-25 17:23:19 +0200 |
---|---|---|
committer | Erik Verbruggen <erik.verbruggen@digia.com> | 2014-07-04 13:51:36 +0200 |
commit | 3d33886e53722ae7e2f33741085fe01c1a1178f8 (patch) | |
tree | 132429c7f2acac09a906cc549dcbd93fe8c90e70 /src/plugins/cpptools/cppsnapshotupdater.cpp | |
parent | 76152088e93258cdd025f49902270a7c53757633 (diff) | |
download | qt-creator-3d33886e53722ae7e2f33741085fe01c1a1178f8.tar.gz |
C++: fix include/framework path handling.
Instead of having two lists of paths, now only one list is used where
both include paths and framework paths can be mixed. This reflects the
way the compiler is invoked, and retains the (correct) search order.
Task-number: QTCREATORBUG-11599
Change-Id: I373953e3e305df5b7a0d10920e12d146584adf9f
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
Diffstat (limited to 'src/plugins/cpptools/cppsnapshotupdater.cpp')
-rw-r--r-- | src/plugins/cpptools/cppsnapshotupdater.cpp | 28 |
1 files changed, 7 insertions, 21 deletions
diff --git a/src/plugins/cpptools/cppsnapshotupdater.cpp b/src/plugins/cpptools/cppsnapshotupdater.cpp index 63dc943d96..60c8d3e414 100644 --- a/src/plugins/cpptools/cppsnapshotupdater.cpp +++ b/src/plugins/cpptools/cppsnapshotupdater.cpp @@ -57,8 +57,7 @@ void SnapshotUpdater::update(CppModelManager::WorkingCopy workingCopy) CppModelManager *modelManager = dynamic_cast<CppModelManager *>(CppModelManagerInterface::instance()); QByteArray configFile = modelManager->codeModelConfiguration(); - QStringList includePaths; - QStringList frameworkPaths; + ProjectPart::HeaderPaths headerPaths; QStringList precompiledHeaders; QString projectConfigFile; @@ -72,8 +71,7 @@ void SnapshotUpdater::update(CppModelManager::WorkingCopy workingCopy) if (m_projectPart) { configFile += m_projectPart->toolchainDefines; configFile += m_projectPart->projectDefines; - includePaths = m_projectPart->includePaths; - frameworkPaths = m_projectPart->frameworkPaths; + headerPaths = m_projectPart->headerPaths; projectConfigFile = m_projectPart->projectConfigFile; if (m_usePrecompiledHeaders) precompiledHeaders = m_projectPart->precompiledHeaders; @@ -91,13 +89,8 @@ void SnapshotUpdater::update(CppModelManager::WorkingCopy workingCopy) m_editorDefinesChangedSinceLastUpdate = false; } - if (includePaths != m_includePaths) { - m_includePaths = includePaths; - invalidateSnapshot = true; - } - - if (frameworkPaths != m_frameworkPaths) { - m_frameworkPaths = frameworkPaths; + if (headerPaths != m_headerPaths) { + m_headerPaths = headerPaths; invalidateSnapshot = true; } @@ -174,8 +167,7 @@ void SnapshotUpdater::update(CppModelManager::WorkingCopy workingCopy) globalSnapshot.remove(fileInEditor()); sourceProcessor.setGlobalSnapshot(globalSnapshot); sourceProcessor.setWorkingCopy(workingCopy); - sourceProcessor.setIncludePaths(m_includePaths); - sourceProcessor.setFrameworkPaths(m_frameworkPaths); + sourceProcessor.setHeaderPaths(m_headerPaths); sourceProcessor.run(configurationFileName); if (!m_projectConfigFile.isEmpty()) sourceProcessor.run(m_projectConfigFile); @@ -218,16 +210,10 @@ Snapshot SnapshotUpdater::snapshot() const return m_snapshot; } -QStringList SnapshotUpdater::includePaths() const -{ - QMutexLocker locker(&m_mutex); - return m_includePaths; -} - -QStringList SnapshotUpdater::frameworkPaths() const +ProjectPart::HeaderPaths SnapshotUpdater::headerPaths() const { QMutexLocker locker(&m_mutex); - return m_frameworkPaths; + return m_headerPaths; } ProjectPart::Ptr SnapshotUpdater::currentProjectPart() const |