diff options
Diffstat (limited to 'src/libs/installer/qtpatch.cpp')
-rw-r--r-- | src/libs/installer/qtpatch.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/libs/installer/qtpatch.cpp b/src/libs/installer/qtpatch.cpp index 89b5dddf6..a29e99f94 100644 --- a/src/libs/installer/qtpatch.cpp +++ b/src/libs/installer/qtpatch.cpp @@ -67,11 +67,11 @@ QHash<QString, QByteArray> QtPatch::qmakeValues(const QString &qmakePath, QByteA QFileInfo qmake(qmakePath); if (!qmake.exists()) { - qmakeOutput->append(QString::fromLatin1("%1 is not existing").arg(qmakePath)); + qmakeOutput->append(QString::fromLatin1("%1 is not existing").arg(qmakePath).toUtf8()); return qmakeValueHash; } if (!qmake.isExecutable()) { - qmakeOutput->append(QString::fromLatin1("%1 is not executable").arg(qmakePath)); + qmakeOutput->append(QString::fromLatin1("%1 is not executable").arg(qmakePath).toUtf8()); return qmakeValueHash; } @@ -82,14 +82,16 @@ QHash<QString, QByteArray> QtPatch::qmakeValues(const QString &qmakePath, QByteA process.start(qmake.absoluteFilePath(), args, QIODevice::ReadOnly); if (process.waitForFinished(10000)) { QByteArray output = process.readAllStandardOutput(); - qmakeOutput->append(output); - if (process.exitStatus() == QProcess::CrashExit) { - qCWarning(QInstaller::lcInstallerInstallLog) << qmake.absoluteFilePath() << args - << "crashed with exit code" << process.exitCode() - << "standard output:" << output - << "error output:" << process.readAllStandardError(); + if ((process.exitStatus() == QProcess::CrashExit) || (process.exitCode() != EXIT_SUCCESS)) { + QStringList detailedOutput = { qmake.absoluteFilePath() + QLatin1Char(' ') + args.join(QLatin1Char(' ')) + + QString::fromLatin1(" returned with exit code: \"%1\".").arg(QString::number(process.exitCode())) + , QString::fromLatin1("Standard output: \"%1\".").arg(QLatin1String(output)) + , QString::fromLatin1("Error output: \"%1\".").arg(QLatin1String(process.readAllStandardError())) + }; + qmakeOutput->append(detailedOutput.join(QLatin1Char('\n')).toUtf8()); return qmakeValueHash; } + qmakeOutput->append(output); qmakeValueHash = readQmakeOutput(output); } if (qmakeValueHash.isEmpty()) { |