CMakeSettings: Do not break most of other settings

Just do not return early, which then missed a settings->endGroup() call.
Fixes a regression introduced by
99e9643dea

Change-Id: I102eb76e3381012cddb73c1132b6443dd2cd592f
Task-number: QTCREATORBUG-14139
Task-number: QTCREATORBUG-14140
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
This commit is contained in:
Eike Ziller
2015-03-16 11:44:34 +01:00
parent bf7da428fb
commit c8da2438ec

View File

@@ -136,24 +136,23 @@ static void readAndDeleteLegacyCMakeSettings ()
settings->beginGroup(QLatin1String("CMakeSettings"));
FileName exec = FileName::fromUserInput(settings->value(QLatin1String("cmakeExecutable")).toString());
if (!exec.toFileInfo().isExecutable())
return;
if (exec.toFileInfo().isExecutable()) {
CMakeTool *item = CMakeToolManager::findByCommand(exec);
if (!item) {
item = new CMakeTool(CMakeTool::ManualDetection);
item->setCMakeExecutable(exec);
item->setDisplayName(CMakeToolManager::tr("CMake at %1").arg(item->cmakeExecutable().toUserOutput()));
CMakeTool *item = CMakeToolManager::findByCommand(exec);
if (!item) {
item = new CMakeTool(CMakeTool::ManualDetection);
item->setCMakeExecutable(exec);
item->setDisplayName(CMakeToolManager::tr("CMake at %1").arg(item->cmakeExecutable().toUserOutput()));
if (!CMakeToolManager::registerCMakeTool(item)) {
delete item;
item = 0;
if (!CMakeToolManager::registerCMakeTool(item)) {
delete item;
item = 0;
}
}
}
//this setting used to be the default cmake, make sure it is again
if (item)
d->m_defaultCMake = item->id();
//this setting used to be the default cmake, make sure it is again
if (item)
d->m_defaultCMake = item->id();
}
//read the legacy ninja setting, if its not available use the current value
d->m_preferNinja = settings->value(QLatin1String("preferNinja"), d->m_preferNinja).toBool();