diff --git a/src/plugins/ios/iossettingswidget.cpp b/src/plugins/ios/iossettingswidget.cpp index 02168a79add..4f7cd37f587 100644 --- a/src/plugins/ios/iossettingswidget.cpp +++ b/src/plugins/ios/iossettingswidget.cpp @@ -155,7 +155,7 @@ void IosSettingsWidget::onCreate() .arg(name).arg(response.simUdid), Utils::StdOutFormat); } else { statusDialog->addMessage(tr("Simulator device (%1) creation failed.\nError: %2"). - arg(name).arg(QString::fromUtf8(response.commandOutput)), + arg(name).arg(response.commandOutput), Utils::StdErrFormat); } }; diff --git a/src/plugins/ios/iostoolhandler.cpp b/src/plugins/ios/iostoolhandler.cpp index 95d0ede5ec6..0ca710bda97 100644 --- a/src/plugins/ios/iostoolhandler.cpp +++ b/src/plugins/ios/iostoolhandler.cpp @@ -926,7 +926,7 @@ void IosSimulatorToolHandlerPrivate::installAppOnSimulator() didTransferApp(m_bundlePath, m_deviceId, IosToolHandler::Success); } else { errorMsg(IosToolHandler::tr("Application install on simulator failed. %1") - .arg(QString::fromLocal8Bit(response.commandOutput))); + .arg(response.commandOutput)); didTransferApp(m_bundlePath, m_deviceId, IosToolHandler::Failure); } emit q->finished(q); @@ -990,7 +990,7 @@ void IosSimulatorToolHandlerPrivate::launchAppOnSimulator(const QStringList &ext } else { m_pid = -1; errorMsg(IosToolHandler::tr("Application launch on simulator failed. %1") - .arg(QString::fromLocal8Bit(response.commandOutput))); + .arg(response.commandOutput)); didStartApp(m_bundlePath, m_deviceId, Ios::IosToolHandler::Failure); stop(-1); q->finished(q); diff --git a/src/plugins/ios/simulatorcontrol.cpp b/src/plugins/ios/simulatorcontrol.cpp index e96bbfffe4b..723f17e95c1 100644 --- a/src/plugins/ios/simulatorcontrol.cpp +++ b/src/plugins/ios/simulatorcontrol.cpp @@ -77,17 +77,17 @@ static bool checkForTimeout(const chrono::high_resolution_clock::time_point &sta return timedOut; } -static bool runCommand(QString command, const QStringList &args, QByteArray *output) +static bool runCommand(QString command, const QStringList &args, QString *output) { Utils::SynchronousProcess p; p.setTimeoutS(-1); Utils::SynchronousProcessResponse resp = p.runBlocking(command, args); if (output) - *output = resp.allRawOutput(); + *output = resp.stdOut(); return resp.result == Utils::SynchronousProcessResponse::Finished; } -static bool runSimCtlCommand(QStringList args, QByteArray *output) +static bool runSimCtlCommand(QStringList args, QString *output) { args.prepend("simctl"); return runCommand("xcrun", args, output); @@ -100,11 +100,10 @@ static bool launchSimulator(const QString &simUdid) { if (IosConfigurations::xcodeVersion() >= QVersionNumber(9)) { // For XCode 9 boot the second device instead of launching simulator app twice. - QByteArray psOutput; + QString psOutput; if (runCommand("ps", {"-A", "-o", "comm"}, &psOutput)) { - QByteArray simulatorCommand = simulatorAppPath.toLatin1(); - for (const QByteArray &comm : psOutput.split('\n')) { - if (comm == simulatorCommand) + for (const QString &comm : psOutput.split('\n')) { + if (comm == simulatorAppPath) return runSimCtlCommand(QStringList({"boot", simUdid}), nullptr); } } else { @@ -120,9 +119,9 @@ static bool launchSimulator(const QString &simUdid) { static QList getAvailableDeviceTypes() { QList deviceTypes; - QByteArray output; + QString output; runSimCtlCommand({"list", "-j", deviceTypeTag}, &output); - QJsonDocument doc = QJsonDocument::fromJson(output); + QJsonDocument doc = QJsonDocument::fromJson(output.toUtf8()); if (!doc.isNull()) { const QJsonArray runtimesArray = doc.object().value(deviceTypeTag).toArray(); foreach (const QJsonValue deviceTypeValue, runtimesArray) { @@ -144,9 +143,9 @@ static QList getAvailableDeviceTypes() static QList getAvailableRuntimes() { QList runtimes; - QByteArray output; + QString output; runSimCtlCommand({"list", "-j", runtimesTag}, &output); - QJsonDocument doc = QJsonDocument::fromJson(output); + QJsonDocument doc = QJsonDocument::fromJson(output.toUtf8()); if (!doc.isNull()) { const QJsonArray runtimesArray = doc.object().value(runtimesTag).toArray(); foreach (const QJsonValue runtimeValue, runtimesArray) { @@ -220,9 +219,9 @@ QList SimulatorControl::availableSimulators() static QList getAllSimulatorDevices() { QList simulatorDevices; - QByteArray output; + QString output; runSimCtlCommand({"list", "-j", devicesTag}, &output); - QJsonDocument doc = QJsonDocument::fromJson(output); + QJsonDocument doc = QJsonDocument::fromJson(output.toUtf8()); if (!doc.isNull()) { const QJsonObject runtimeObject = doc.object().value(devicesTag).toObject(); foreach (const QString &runtime, runtimeObject.keys()) { @@ -512,7 +511,7 @@ void SimulatorControlPrivate::launchApp(QFutureInterface