From 72fe2c706ec0f3a1b23a91334af847517a283060 Mon Sep 17 00:00:00 2001 From: hjk Date: Thu, 1 Aug 2019 15:44:21 +0200 Subject: [PATCH] ProjectExplorer: Inline Project::restoreTarget() ... into its only internal user. Change-Id: I3f2d1a3af757036cc2194967a71ad0d48ed05d9a Reviewed-by: Christian Kandeler --- src/plugins/projectexplorer/project.cpp | 45 +++++++++++-------------- src/plugins/projectexplorer/project.h | 1 - 2 files changed, 20 insertions(+), 26 deletions(-) diff --git a/src/plugins/projectexplorer/project.cpp b/src/plugins/projectexplorer/project.cpp index 6aa2e415eef..75349ef34c1 100644 --- a/src/plugins/projectexplorer/project.cpp +++ b/src/plugins/projectexplorer/project.cpp @@ -536,28 +536,6 @@ void Project::handleSubTreeChanged(FolderNode *node) emit fileListChanged(); } -std::unique_ptr Project::restoreTarget(const QVariantMap &data) -{ - Core::Id id = idFromMap(data); - if (target(id)) { - qWarning("Warning: Duplicated target id found, not restoring second target with id '%s'. Continuing.", - qPrintable(id.toString())); - return nullptr; - } - - Kit *k = KitManager::kit(id); - if (!k) { - qWarning("Warning: No kit '%s' found. Continuing.", qPrintable(id.toString())); - return nullptr; - } - - auto t = std::make_unique(this, k, Target::_constructor_tag{}); - if (!t->fromMap(data)) - return {}; - - return t; -} - void Project::saveSettings() { emit aboutToSaveSettings(); @@ -730,10 +708,27 @@ void Project::createTargetFromMap(const QVariantMap &map, int index) const QString key = QString::fromLatin1(TARGET_KEY_PREFIX) + QString::number(index); if (!map.contains(key)) return; - QVariantMap targetMap = map.value(key).toMap(); - std::unique_ptr t = restoreTarget(targetMap); - if (!t || (t->runConfigurations().isEmpty() && t->buildConfigurations().isEmpty())) + const QVariantMap targetMap = map.value(key).toMap(); + + Core::Id id = idFromMap(targetMap); + if (target(id)) { + qWarning("Warning: Duplicated target id found, not restoring second target with id '%s'. Continuing.", + qPrintable(id.toString())); + return; + } + + Kit *k = KitManager::kit(id); + if (!k) { + qWarning("Warning: No kit '%s' found. Continuing.", qPrintable(id.toString())); + return; + } + + auto t = std::make_unique(this, k, Target::_constructor_tag{}); + if (!t->fromMap(targetMap)) + return; + + if (t->runConfigurations().isEmpty() && t->buildConfigurations().isEmpty()) return; addTarget(std::move(t)); diff --git a/src/plugins/projectexplorer/project.h b/src/plugins/projectexplorer/project.h index f736a90dfc3..1703d92b9dd 100644 --- a/src/plugins/projectexplorer/project.h +++ b/src/plugins/projectexplorer/project.h @@ -134,7 +134,6 @@ public: std::unique_ptr createTarget(Kit *k); static bool copySteps(Target *sourceTarget, Target *newTarget); - std::unique_ptr restoreTarget(const QVariantMap &data); void saveSettings(); enum class RestoreResult { Ok, Error, UserAbort };