From 0a33ef362a6980d3ef240b0049da8d1bc4e38a92 Mon Sep 17 00:00:00 2001 From: Yuchen Deng <loaden@gmail.com> Date: Sat, 6 Oct 2012 10:54:54 +0800 Subject: [PATCH] Restore system kits only if the kit file exist Change-Id: I2e5e31d2d744203d2a0834a3169a73c43e61447d Reviewed-by: Tobias Hunger <tobias.hunger@digia.com> --- src/plugins/projectexplorer/kitmanager.cpp | 23 +++++++++++----------- 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/src/plugins/projectexplorer/kitmanager.cpp b/src/plugins/projectexplorer/kitmanager.cpp index 1e8a4dc3785..d72e1d68a57 100644 --- a/src/plugins/projectexplorer/kitmanager.cpp +++ b/src/plugins/projectexplorer/kitmanager.cpp @@ -154,26 +154,25 @@ void KitManager::restoreKits() // read all kits from SDK QFileInfo systemSettingsFile(Core::ICore::settings(QSettings::SystemScope)->fileName()); - KitList system = restoreKits(Utils::FileName::fromString(systemSettingsFile.absolutePath() + QLatin1String(KIT_FILENAME))); - QList<Kit *> readKits = system.kits; - // make sure we mark these as autodetected! - foreach (Kit *k, readKits) - k->setAutoDetected(true); - - kitsToRegister = readKits; // SDK kits are always considered to be up-to-date, so no need to - // recheck them. + QFileInfo kitFile(systemSettingsFile.absolutePath(), QLatin1String(KIT_FILENAME)); + if (kitFile.exists()) { + KitList system = restoreKits(Utils::FileName(kitFile)); + // make sure we mark these as autodetected! + foreach (Kit *k, system.kits) + k->setAutoDetected(true); + + // SDK kits are always considered to be up-to-date, so no need to recheck them. + kitsToRegister = system.kits; + } // read all kit chains from user file KitList userKits = restoreKits(settingsFileName()); - readKits = userKits.kits; - - foreach (Kit *k, readKits) { + foreach (Kit *k, userKits.kits) { if (k->isAutoDetected()) kitsToCheck.append(k); else kitsToRegister.append(k); } - readKits.clear(); // Then auto create kits: QList<Kit *> detectedKits; -- GitLab