diff --git a/src/plugins/projectexplorer/applicationlauncher.cpp b/src/plugins/projectexplorer/applicationlauncher.cpp index 726546636c9..16c2bb3eeee 100644 --- a/src/plugins/projectexplorer/applicationlauncher.cpp +++ b/src/plugins/projectexplorer/applicationlauncher.cpp @@ -286,13 +286,13 @@ void ApplicationLauncherPrivate::localGuiProcessError() error = ApplicationLauncher::tr("Failed to start program. Path or permissions wrong?"); break; case QProcess::Crashed: - error = ApplicationLauncher::tr("The program has unexpectedly finished."); status = QProcess::CrashExit; break; default: error = ApplicationLauncher::tr("Some error has occurred while running the program."); } - emit q->appendMessage(error, ErrorMessageFormat); + if (!error.isEmpty()) + emit q->appendMessage(error, ErrorMessageFormat); if (m_processRunning && !isRunning()) { m_processRunning = false; emit q->processExited(-1, status); diff --git a/src/plugins/projectexplorer/runcontrol.cpp b/src/plugins/projectexplorer/runcontrol.cpp index 704307c68af..4cd0665f095 100644 --- a/src/plugins/projectexplorer/runcontrol.cpp +++ b/src/plugins/projectexplorer/runcontrol.cpp @@ -1233,8 +1233,11 @@ void SimpleTargetRunner::doStart(const Runnable &runnable, const IDevice::ConstP this, [this, runnable](QProcess::ProcessError error) { if (error == QProcess::Timedout) return; // No actual change on the process side. - const QString msg = userMessageForProcessError(error, runnable.command.executable()); - appendMessage(msg, Utils::NormalMessageFormat); + if (error != QProcess::Crashed) { + const QString msg = userMessageForProcessError( + error, runnable.command.executable()); + appendMessage(msg, Utils::NormalMessageFormat); + } if (!m_stopReported) { m_stopReported = true; reportStopped();