diff options
author | hjk <[email protected]> | 2022-04-14 16:52:51 +0200 |
---|---|---|
committer | hjk <[email protected]> | 2022-04-22 14:21:09 +0000 |
commit | 4297b9f289e61970b3e40e42b10eab7740160615 (patch) | |
tree | 268a106283a7aa125e3e8517094619ae7027d801 | |
parent | 2533a4cfd6f55f9b68ccab35ca7bf51b3b51b505 (diff) |
Android: Avoid one use of ProcessArgs::splitArgs()
Replaced by the more harmless joinArgs in a compatibility settings
code path for now.
Change-Id: Id6d94faea26002f4a2641b5824d97e09a783b720
Reviewed-by: Alessandro Portale <[email protected]>
-rw-r--r-- | src/plugins/android/androidavdmanager.cpp | 12 | ||||
-rw-r--r-- | src/plugins/android/androidconfigurations.cpp | 10 | ||||
-rw-r--r-- | src/plugins/android/androidconfigurations.h | 6 | ||||
-rw-r--r-- | src/plugins/android/androiddevice.cpp | 4 |
4 files changed, 17 insertions, 15 deletions
diff --git a/src/plugins/android/androidavdmanager.cpp b/src/plugins/android/androidavdmanager.cpp index b5c57093704..95699a5c56e 100644 --- a/src/plugins/android/androidavdmanager.cpp +++ b/src/plugins/android/androidavdmanager.cpp @@ -292,14 +292,14 @@ bool AndroidAvdManager::startAvdAsync(const QString &avdName) const }); // start the emulator - QStringList arguments; + CommandLine cmd(m_config.emulatorToolPath()); if (AndroidConfigurations::force32bitEmulator()) - arguments << "-force-32bit"; + cmd.addArg("-force-32bit"); - arguments << m_config.emulatorArgs() << "-avd" << avdName; - qCDebug(avdManagerLog) << "Running command (startAvdAsync):" - << CommandLine(m_config.emulatorToolPath(), arguments).toUserOutput(); - avdProcess->setCommand({m_config.emulatorToolPath(), arguments}); + cmd.addArgs(m_config.emulatorArgs(), CommandLine::Raw); + cmd.addArgs({"-avd", avdName}); + qCDebug(avdManagerLog) << "Running command (startAvdAsync):" << cmd.toUserOutput(); + avdProcess->setCommand(cmd); avdProcess->start(); return avdProcess->waitForStarted(-1); } diff --git a/src/plugins/android/androidconfigurations.cpp b/src/plugins/android/androidconfigurations.cpp index c3702fa2763..d8e1432ada0 100644 --- a/src/plugins/android/androidconfigurations.cpp +++ b/src/plugins/android/androidconfigurations.cpp @@ -229,8 +229,10 @@ QLatin1String AndroidConfig::displayName(const Abi &abi) void AndroidConfig::load(const QSettings &settings) { // user settings - m_emulatorArgs = settings.value(EmulatorArgsKey, - QStringList({"-netdelay", "none", "-netspeed", "full"})).toStringList(); + QVariant emulatorArgs = settings.value(EmulatorArgsKey, QString("-netdelay none -netspeed full")); + if (emulatorArgs.type() == QVariant::StringList) // Changed in 8.0 from QStringList to QString. + emulatorArgs = ProcessArgs::joinArgs(emulatorArgs.toStringList()); + m_emulatorArgs = emulatorArgs.toString(); m_sdkLocation = FilePath::fromUserInput(settings.value(SDKLocationKey).toString()).cleanPath(); m_customNdkList = settings.value(CustomNdkLocationsKey).toStringList(); m_defaultNdk = @@ -1106,12 +1108,12 @@ QString AndroidConfig::toolchainHostFromNdk(const FilePath &ndkPath) return toolchainHost; } -QStringList AndroidConfig::emulatorArgs() const +QString AndroidConfig::emulatorArgs() const { return m_emulatorArgs; } -void AndroidConfig::setEmulatorArgs(const QStringList &args) +void AndroidConfig::setEmulatorArgs(const QString &args) { m_emulatorArgs = args; } diff --git a/src/plugins/android/androidconfigurations.h b/src/plugins/android/androidconfigurations.h index c9726370eef..0578b3f5783 100644 --- a/src/plugins/android/androidconfigurations.h +++ b/src/plugins/android/androidconfigurations.h @@ -123,8 +123,8 @@ public: QString toolchainHost(const QtSupport::QtVersion *qtVersion) const; static QString toolchainHostFromNdk(const Utils::FilePath &ndkPath); - QStringList emulatorArgs() const; - void setEmulatorArgs(const QStringList &args); + QString emulatorArgs() const; + void setEmulatorArgs(const QString &args); bool automaticKitCreation() const; void setAutomaticKitCreation(bool b); @@ -196,7 +196,7 @@ private: Utils::FilePath m_openJDKLocation; Utils::FilePath m_keystoreLocation; Utils::FilePath m_openSslLocation; - QStringList m_emulatorArgs; + QString m_emulatorArgs; bool m_automaticKitCreation = true; QUrl m_sdkToolsUrl; QByteArray m_sdkToolsSha256; diff --git a/src/plugins/android/androiddevice.cpp b/src/plugins/android/androiddevice.cpp index 231d80ffe37..de06abbd9d5 100644 --- a/src/plugins/android/androiddevice.cpp +++ b/src/plugins/android/androiddevice.cpp @@ -603,7 +603,7 @@ void AndroidDeviceManager::setEmulatorArguments(QWidget *parent) dialog.setLabelText(AndroidDevice::tr("Emulator command-line startup options " "(<a href=\"%1\">Help Web Page</a>):") .arg(helpUrl)); - dialog.setTextValue(m_androidConfig.emulatorArgs().join(' ')); + dialog.setTextValue(m_androidConfig.emulatorArgs()); if (auto label = dialog.findChild<QLabel*>()) { label->setOpenExternalLinks(true); @@ -613,7 +613,7 @@ void AndroidDeviceManager::setEmulatorArguments(QWidget *parent) if (dialog.exec() != QDialog::Accepted) return; - m_androidConfig.setEmulatorArgs(ProcessArgs::splitArgs(dialog.textValue())); + m_androidConfig.setEmulatorArgs(dialog.textValue()); } QString AndroidDeviceManager::getRunningAvdsSerialNumber(const QString &name) const |