aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@qt.io>2019-05-03 12:47:18 +0200
committerEike Ziller <eike.ziller@qt.io>2019-05-07 08:09:56 +0000
commite9e4c27e3a3f157291a231b8a746bb76dea525b7 (patch)
treee7a207a92ec33a7abd9ed9e5f9a25f6588b966d2 /src
parent48f8eca5746e945ba177d827ff925d80ad3982fd (diff)
sdktool: Do not fiddle with display names
sdktool made the "display names" unique by potentially adding a number. This has multiple drawbacks: - The display name can contain variables that lead to unique _expanded_ names - Adding a number doesn't really help for distinguishing things - That number is then hard-baked into the install settings Installers should take care that they register identifiable names. And if we really want to ensure unique names, then Qt Creator can do that itself, or even better leave the user to do it, because a number doesn't really help anyhow. Fixes: QTCREATORBUG-17909 Change-Id: Id0f44c0cbe457047a0713bda4980fb5d4bc5bcaa Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/tools/sdktool/addcmakeoperation.cpp9
-rw-r--r--src/tools/sdktool/adddebuggeroperation.cpp10
-rw-r--r--src/tools/sdktool/addkitoperation.cpp17
-rw-r--r--src/tools/sdktool/addqtoperation.cpp9
-rw-r--r--src/tools/sdktool/addtoolchainoperation.cpp9
-rw-r--r--src/tools/sdktool/operation.cpp9
-rw-r--r--src/tools/sdktool/operation.h1
7 files changed, 10 insertions, 54 deletions
diff --git a/src/tools/sdktool/addcmakeoperation.cpp b/src/tools/sdktool/addcmakeoperation.cpp
index bc8d9a66bc..893b9c5b61 100644
--- a/src/tools/sdktool/addcmakeoperation.cpp
+++ b/src/tools/sdktool/addcmakeoperation.cpp
@@ -203,20 +203,13 @@ QVariantMap AddCMakeOperation::addCMake(const QVariantMap &map, const QString &i
return QVariantMap();
}
- // Sanity check: Make sure displayName is unique.
- QStringList nameKeys = FindKeyOperation::findKey(map, DISPLAYNAME_KEY);
- QStringList nameList;
- foreach (const QString &nameKey, nameKeys)
- nameList << GetOperation::get(map, nameKey).toString();
- const QString uniqueName = makeUnique(displayName, nameList);
-
QVariantMap result = RmKeysOperation::rmKeys(map, {COUNT});
const QString cm = QString::fromLatin1(PREFIX) + QString::number(count);
KeyValuePairList data;
data << KeyValuePair({cm, ID_KEY}, QVariant(id));
- data << KeyValuePair({cm, DISPLAYNAME_KEY}, QVariant(uniqueName));
+ data << KeyValuePair({cm, DISPLAYNAME_KEY}, QVariant(displayName));
data << KeyValuePair({cm, AUTODETECTED_KEY}, QVariant(true));
data << KeyValuePair({cm, PATH_KEY}, QVariant(path));
KeyValuePairList extraList;
diff --git a/src/tools/sdktool/adddebuggeroperation.cpp b/src/tools/sdktool/adddebuggeroperation.cpp
index e6871cb8b6..3e94603d3c 100644
--- a/src/tools/sdktool/adddebuggeroperation.cpp
+++ b/src/tools/sdktool/adddebuggeroperation.cpp
@@ -204,17 +204,11 @@ QVariantMap AddDebuggerOperation::addDebugger(const QVariantMap &map,
toRemove << QLatin1String(COUNT);
QVariantMap cleaned = RmKeysOperation::rmKeys(map, toRemove);
- // Sanity check: Make sure displayName is unique.
- QStringList nameKeys = FindKeyOperation::findKey(map, QLatin1String(DISPLAYNAME));
- QStringList nameList;
- foreach (const QString &nameKey, nameKeys)
- nameList << GetOperation::get(map, nameKey).toString();
- const QString uniqueName = makeUnique(displayName, nameList);
-
// insert data:
KeyValuePairList data;
data << KeyValuePair(QStringList() << debugger << QLatin1String(ID), QVariant(id));
- data << KeyValuePair(QStringList() << debugger << QLatin1String(DISPLAYNAME), QVariant(uniqueName));
+ data << KeyValuePair(QStringList() << debugger << QLatin1String(DISPLAYNAME),
+ QVariant(displayName));
data << KeyValuePair(QStringList() << debugger << QLatin1String(AUTODETECTED), QVariant(true));
data << KeyValuePair(QStringList() << debugger << QLatin1String(ABIS), QVariant(abis));
diff --git a/src/tools/sdktool/addkitoperation.cpp b/src/tools/sdktool/addkitoperation.cpp
index b1c480811e..0763c55e46 100644
--- a/src/tools/sdktool/addkitoperation.cpp
+++ b/src/tools/sdktool/addkitoperation.cpp
@@ -623,19 +623,12 @@ QVariantMap AddKitOperation::addKit(const QVariantMap &map, const QVariantMap &t
// remove data:
QVariantMap cleaned = RmKeysOperation::rmKeys(map, {COUNT, DEFAULT});
- // Sanity check: Make sure displayName is unique.
- QStringList nameKeys = FindKeyOperation::findKey(map, DISPLAYNAME);
- QStringList nameList;
- foreach (const QString &nameKey, nameKeys)
- nameList << GetOperation::get(map, nameKey).toString();
- const QString uniqueName = makeUnique(displayName, nameList);
-
// insert data:
- KeyValuePairList data = { KeyValuePair({kit, ID}, QVariant(id)),
- KeyValuePair({kit, DISPLAYNAME}, QVariant(uniqueName)),
- KeyValuePair({kit, ICON}, QVariant(icon)),
- KeyValuePair({kit, AUTODETECTED}, QVariant(true)),
- KeyValuePair({kit, SDK}, QVariant(true))};
+ KeyValuePairList data = {KeyValuePair({kit, ID}, QVariant(id)),
+ KeyValuePair({kit, DISPLAYNAME}, QVariant(displayName)),
+ KeyValuePair({kit, ICON}, QVariant(icon)),
+ KeyValuePair({kit, AUTODETECTED}, QVariant(true)),
+ KeyValuePair({kit, SDK}, QVariant(true))};
if (!debuggerId.isEmpty() || !debugger.isEmpty()) {
if (debuggerId.isEmpty()) {
diff --git a/src/tools/sdktool/addqtoperation.cpp b/src/tools/sdktool/addqtoperation.cpp
index c71676433b..30ece83c65 100644
--- a/src/tools/sdktool/addqtoperation.cpp
+++ b/src/tools/sdktool/addqtoperation.cpp
@@ -296,20 +296,13 @@ QVariantMap AddQtOperation::addQt(const QVariantMap &map,
}
const QString qt = QString::fromLatin1(PREFIX) + QString::number(versionCount);
- // Sanity check: Make sure displayName is unique.
- QStringList nameKeys = FindKeyOperation::findKey(map, QLatin1String(DISPLAYNAME));
- QStringList nameList;
- foreach (const QString &nameKey, nameKeys)
- nameList << GetOperation::get(map, nameKey).toString();
- const QString uniqueName = makeUnique(displayName, nameList);
-
// Sanitize qmake path:
QString saneQmake = QDir::cleanPath(QDir::fromNativeSeparators(qmake));
// insert data:
KeyValuePairList data;
data << KeyValuePair(QStringList() << qt << QLatin1String(ID), QVariant(-1));
- data << KeyValuePair(QStringList() << qt << QLatin1String(DISPLAYNAME), QVariant(uniqueName));
+ data << KeyValuePair(QStringList() << qt << QLatin1String(DISPLAYNAME), QVariant(displayName));
data << KeyValuePair(QStringList() << qt << QLatin1String(AUTODETECTED), QVariant(true));
data << KeyValuePair(QStringList() << qt << QLatin1String(AUTODETECTION_SOURCE), QVariant(sdkId));
data << KeyValuePair(QStringList() << qt << QLatin1String(QMAKE), QVariant(saneQmake));
diff --git a/src/tools/sdktool/addtoolchainoperation.cpp b/src/tools/sdktool/addtoolchainoperation.cpp
index 335b72ec76..0f5359cff3 100644
--- a/src/tools/sdktool/addtoolchainoperation.cpp
+++ b/src/tools/sdktool/addtoolchainoperation.cpp
@@ -253,13 +253,6 @@ QVariantMap AddToolChainOperation::addToolChain(const QVariantMap &map, const QS
return QVariantMap();
}
- // Sanity check: Make sure displayName is unique.
- QStringList nameKeys = FindKeyOperation::findKey(map, DISPLAYNAME);
- QStringList nameList;
- foreach (const QString &nameKey, nameKeys)
- nameList << GetOperation::get(map, nameKey).toString();
- const QString uniqueName = makeUnique(displayName, nameList);
-
QVariantMap result = RmKeysOperation::rmKeys(map, {COUNT});
const QString tc = QString::fromLatin1(PREFIX) + QString::number(count);
@@ -290,7 +283,7 @@ QVariantMap AddToolChainOperation::addToolChain(const QVariantMap &map, const QS
data << KeyValuePair({tc, LANGUAGE_KEY}, QVariant(oldLang));
if (!newLang.isEmpty())
data << KeyValuePair({tc, LANGUAGE_KEY_V2}, QVariant(newLang));
- data << KeyValuePair({tc, DISPLAYNAME}, QVariant(uniqueName));
+ data << KeyValuePair({tc, DISPLAYNAME}, QVariant(displayName));
data << KeyValuePair({tc, AUTODETECTED}, QVariant(true));
data << KeyValuePair({tc, PATH}, QVariant(path));
data << KeyValuePair({tc, TARGET_ABI}, QVariant(abi));
diff --git a/src/tools/sdktool/operation.cpp b/src/tools/sdktool/operation.cpp
index c4f823281a..68bad3272d 100644
--- a/src/tools/sdktool/operation.cpp
+++ b/src/tools/sdktool/operation.cpp
@@ -62,15 +62,6 @@ QVariant Operation::valueFromString(const QString &v)
return QVariant();
}
-QString Operation::makeUnique(const QString &name, const QStringList &inUse)
-{
- QString unique = name;
- int i = 1;
- while (inUse.contains(unique))
- unique = name + QString::number(++i);
- return unique;
-}
-
Operation::KeyValuePair::KeyValuePair(const QString &k, const QString &v) :
value(valueFromString(v))
{
diff --git a/src/tools/sdktool/operation.h b/src/tools/sdktool/operation.h
index ad2062cf8f..99077fb216 100644
--- a/src/tools/sdktool/operation.h
+++ b/src/tools/sdktool/operation.h
@@ -63,5 +63,4 @@ public:
bool save(const QVariantMap &map, const QString &file) const;
static QVariant valueFromString(const QString &v);
- static QString makeUnique(const QString &name, const QStringList &inUse);
};