KitManager: Use unique_ptr to manage kits

Change-Id: I8c66290f0d23afe37673bd858f7db135c8232a78
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
This commit is contained in:
Tobias Hunger
2018-07-16 15:32:23 +02:00
parent df2b2f1a17
commit f685e2bfb4
13 changed files with 151 additions and 158 deletions

View File

@@ -63,6 +63,8 @@
#include <QStandardPaths>
#include <QTimer>
#include <memory>
using namespace ProjectExplorer;
using namespace QtSupport;
using namespace Utils;
@@ -298,7 +300,8 @@ void IosConfigurations::updateAutomaticKitList()
kit->unblockNotification();
} else {
qCDebug(kitSetupLog) << " - Setting up new kit";
kit = new Kit;
auto newKit = std::make_unique<Kit>();
kit = newKit.get();
kit->blockNotification();
kit->setAutoDetected(true);
const QString baseDisplayName = isSimulatorDeviceId(pDeviceType)
@@ -307,7 +310,7 @@ void IosConfigurations::updateAutomaticKitList()
kit->setUnexpandedDisplayName(baseDisplayName);
setupKit(kit, pDeviceType, platformToolchains, debuggerId, sdk.path, qtVersion);
kit->unblockNotification();
KitManager::registerKit(kit);
KitManager::registerKit(std::move(newKit));
}
resultingKits.insert(kit);
}
@@ -330,8 +333,8 @@ IosConfigurations *IosConfigurations::instance()
void IosConfigurations::initialize()
{
QTC_CHECK(m_instance == 0);
m_instance = new IosConfigurations(0);
QTC_CHECK(m_instance == nullptr);
m_instance = new IosConfigurations(nullptr);
}
bool IosConfigurations::ignoreAllDevices()