SdkTool: Allow remote paths in various operations

QDir::cleanPath() doesn't work well with the scheme://... syntax.

Change-Id: I2d2a86e416251ea2396b67ab1e5831444d4a979a
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
hjk
2021-11-18 13:05:28 +01:00
parent 2dbe5c72d8
commit 1a6e6825e6
6 changed files with 14 additions and 20 deletions

View File

@@ -33,10 +33,12 @@
#include "settings.h"
#include <QDir>
#include <utils/filepath.h>
#include <iostream>
using namespace Utils;
// Qt version file stuff:
const char PREFIX[] = "QtVersion.";
const char VERSION[] = "Version";
@@ -297,7 +299,7 @@ QVariantMap AddQtOperation::addQt(const QVariantMap &map,
const QString qt = QString::fromLatin1(PREFIX) + QString::number(versionCount);
// Sanitize qmake path:
QString saneQmake = QDir::cleanPath(QDir::fromNativeSeparators(qmake));
FilePath saneQmake = FilePath::fromUserInput(qmake);
// insert data:
KeyValuePairList data;
@@ -305,7 +307,7 @@ QVariantMap AddQtOperation::addQt(const QVariantMap &map,
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));
data << KeyValuePair(QStringList() << qt << QLatin1String(QMAKE), saneQmake.toVariant());
data << KeyValuePair(QStringList() << qt << QLatin1String(TYPE), QVariant(type));
data << KeyValuePair(QStringList() << qt << ABIS, QVariant(abis));