From bbc07bd47e17b36aec2769392356eca90bae1cfd Mon Sep 17 00:00:00 2001 From: Eike Ziller Date: Thu, 1 Oct 2015 16:25:22 +0200 Subject: [PATCH] iOS: Do not hardcode Qt version in iOS kits Since Qt installers nowadays (since Qt 5.3) register all Qt patch releases of the same minor version with the same ID, the Kit will not be updated (because the Qt 'is the same'), so it should use %{Qt:Version} instead of hardcoding the version. Change-Id: Ieb8b766490b3c6297fa11802c6e13724658795d5 Task-number: QTCREATORBUG-15128 Reviewed-by: Tobias Hunger --- src/plugins/ios/iosconfigurations.cpp | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/plugins/ios/iosconfigurations.cpp b/src/plugins/ios/iosconfigurations.cpp index 4c7b692587a..dbaca861b96 100644 --- a/src/plugins/ios/iosconfigurations.cpp +++ b/src/plugins/ios/iosconfigurations.cpp @@ -300,11 +300,28 @@ void IosConfigurations::updateAutomaticKitList() } if (kitExists) { kitAtt->blockNotification(); + // TODO: this is just to fix up broken display names from before + QString baseDisplayName = tr("%1 %2").arg(p.name, qt->unexpandedDisplayName()); + QString displayName = baseDisplayName; + for (int iVers = 1; iVers < 100; ++iVers) { + bool unique = true; + foreach (const Kit *k, existingKits) { + if (k == kitAtt) + continue; + if (k->displayName() == displayName) { + unique = false; + break; + } + } + if (unique) break; + displayName = baseDisplayName + QLatin1Char('-') + QString::number(iVers); + } + kitAtt->setUnexpandedDisplayName(displayName); } else { qCDebug(kitSetupLog) << "setting up new kit for " << p.name; kitAtt = new Kit; kitAtt->setAutoDetected(true); - QString baseDisplayName = tr("%1 %2").arg(p.name, qt->displayName()); + QString baseDisplayName = tr("%1 %2").arg(p.name, qt->unexpandedDisplayName()); QString displayName = baseDisplayName; for (int iVers = 1; iVers < 100; ++iVers) { bool unique = true;