diff --git a/launcher/LoggedProcess.cpp b/launcher/LoggedProcess.cpp index bae45ad88..c5ef47d7b 100644 --- a/launcher/LoggedProcess.cpp +++ b/launcher/LoggedProcess.cpp @@ -114,7 +114,7 @@ void LoggedProcess::on_error(QProcess::ProcessError error) { switch (error) { case QProcess::FailedToStart: { - emit log({ tr("The process failed to start.") }, MessageLevel::Fatal); + emit log({ tr("The process failed to start: %1").arg(errorString()) }, MessageLevel::Fatal); changeState(LoggedProcess::FailedToStart); break; } diff --git a/launcher/java/JavaChecker.cpp b/launcher/java/JavaChecker.cpp index 5c52c653d..3a04756fa 100644 --- a/launcher/java/JavaChecker.cpp +++ b/launcher/java/JavaChecker.cpp @@ -179,13 +179,20 @@ void JavaChecker::finished(int exitcode, QProcess::ExitStatus status) void JavaChecker::error(QProcess::ProcessError err) { if (err == QProcess::FailedToStart) { - qDebug() << "Java checker has failed to start."; + qDebug() << "Java checker has failed to start:" << process->errorString(); qDebug() << "Process environment:"; qDebug() << process->environment(); qDebug() << "Native environment:"; qDebug() << QProcessEnvironment::systemEnvironment().toStringList(); killTimer.stop(); - emit checkFinished({ m_path, m_id }); + + Result result = { + m_path, + m_id, + }; + result.errorLog = process->errorString(); + result.validity = Result::Validity::Errored; + emit checkFinished(result); } emitSucceeded(); } diff --git a/launcher/minecraft/launch/LauncherPartLaunch.cpp b/launcher/minecraft/launch/LauncherPartLaunch.cpp index a2c400e75..e4d3ec1ef 100644 --- a/launcher/minecraft/launch/LauncherPartLaunch.cpp +++ b/launcher/minecraft/launch/LauncherPartLaunch.cpp @@ -164,9 +164,9 @@ void LauncherPartLaunch::on_state(LoggedProcess::State state) switch (state) { case LoggedProcess::FailedToStart: { //: Error message displayed if instace can't start - const char* reason = QT_TR_NOOP("Could not launch Minecraft!"); - emit logLine(reason, MessageLevel::Fatal); - emitFailed(tr(reason)); + const char* reason = QT_TR_NOOP("Could not launch Minecraft: %1"); + emit logLine(QString(reason).arg(m_process.errorString()), MessageLevel::Fatal); + emitFailed(tr(reason).arg(m_process.errorString())); return; } case LoggedProcess::Aborted: