diff options
author | Nikolai Kosjar <nikolai.kosjar@theqtcompany.com> | 2015-07-15 17:15:57 +0200 |
---|---|---|
committer | Nikolai Kosjar <nikolai.kosjar@theqtcompany.com> | 2015-07-20 09:49:26 +0000 |
commit | a3056e8922a96a3461b9c59ff7d70a034174a197 (patch) | |
tree | d8ca657c966267e77e5027fab216e42861f6362b /src/plugins/cpptools/cppmodelmanager.cpp | |
parent | 420bc6973973c5f75798645bfbbbc783972b121f (diff) | |
download | qt-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.cpp | 17 |
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. |