summaryrefslogtreecommitdiff
path: root/src/plugins/cpptools/cppmodelmanager.cpp
diff options
context:
space:
mode:
authorNikolai Kosjar <nikolai.kosjar@theqtcompany.com>2015-07-15 17:15:57 +0200
committerNikolai Kosjar <nikolai.kosjar@theqtcompany.com>2015-07-20 09:49:26 +0000
commita3056e8922a96a3461b9c59ff7d70a034174a197 (patch)
treed8ca657c966267e77e5027fab216e42861f6362b /src/plugins/cpptools/cppmodelmanager.cpp
parent420bc6973973c5f75798645bfbbbc783972b121f (diff)
downloadqt-creator-a3056e8922a96a3461b9c59ff7d70a034174a197.tar.gz
CppTools: Fix removedProjectParts()
It compared pointers, not ids. Change-Id: Ic77c64e452f8abfe9a35b74591f0f3baeebcf7f0 Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
Diffstat (limited to 'src/plugins/cpptools/cppmodelmanager.cpp')
-rw-r--r--src/plugins/cpptools/cppmodelmanager.cpp17
1 files changed, 8 insertions, 9 deletions
diff --git a/src/plugins/cpptools/cppmodelmanager.cpp b/src/plugins/cpptools/cppmodelmanager.cpp
index ca3283ece2..be1fc9e258 100644
--- a/src/plugins/cpptools/cppmodelmanager.cpp
+++ b/src/plugins/cpptools/cppmodelmanager.cpp
@@ -54,6 +54,7 @@
#include <projectexplorer/projectexplorer.h>
#include <projectexplorer/session.h>
#include <extensionsystem/pluginmanager.h>
+#include <utils/algorithm.h>
#include <utils/fileutils.h>
#include <utils/qtcassert.h>
@@ -710,13 +711,11 @@ void CppModelManager::removeFilesFromSnapshot(const QSet<QString> &filesToRemove
d->m_snapshot.remove(i.next());
}
-static QStringList projectPartIds(const QSet<ProjectPart::Ptr> &projectParts)
+static QSet<QString> projectPartIds(const QSet<ProjectPart::Ptr> &projectParts)
{
- QStringList result;
- QSetIterator<ProjectPart::Ptr> it(projectParts);
- while (it.hasNext())
- result << it.next()->id();
- return result;
+ return Utils::transform(projectParts, [](const ProjectPart::Ptr &projectPart) {
+ return projectPart->id();
+ });
}
class ProjectInfoComparer
@@ -750,9 +749,9 @@ public:
QStringList removedProjectParts()
{
- QSet<ProjectPart::Ptr> removed = m_old.projectParts().toSet();
- removed.subtract(m_new.projectParts().toSet());
- return projectPartIds(removed);
+ QSet<QString> removed = projectPartIds(m_old.projectParts().toSet());
+ removed.subtract(projectPartIds(m_new.projectParts().toSet()));
+ return removed.toList();
}
/// Returns a list of common files that have a changed timestamp.