diff --git a/src/plugins/projectexplorer/runcontrol.cpp b/src/plugins/projectexplorer/runcontrol.cpp index b43c7fe3e83..39f2af549a2 100644 --- a/src/plugins/projectexplorer/runcontrol.cpp +++ b/src/plugins/projectexplorer/runcontrol.cpp @@ -1666,9 +1666,9 @@ void RunWorker::reportFailure(const QString &msg) * Appends a message in the specified \a format to * the owning RunControl's \uicontrol{Application Output} pane. */ -void RunWorker::appendMessage(const QString &msg, OutputFormat format) +void RunWorker::appendMessage(const QString &msg, OutputFormat format, bool appendNewLine) { - if (msg.endsWith('\n')) + if (!appendNewLine || msg.endsWith('\n')) emit d->runControl->appendMessage(msg, format); else emit d->runControl->appendMessage(msg + '\n', format); diff --git a/src/plugins/projectexplorer/runcontrol.h b/src/plugins/projectexplorer/runcontrol.h index d33d7071625..84a5b5c1667 100644 --- a/src/plugins/projectexplorer/runcontrol.h +++ b/src/plugins/projectexplorer/runcontrol.h @@ -67,7 +67,7 @@ public: QVariant recordedData(const QString &channel) const; // Part of read-only interface of RunControl for convenience. - void appendMessage(const QString &msg, Utils::OutputFormat format); + void appendMessage(const QString &msg, Utils::OutputFormat format, bool appendNewLine = true); void appendMessageChunk(const QString &msg, Utils::OutputFormat format); IDeviceConstPtr device() const; diff --git a/src/plugins/valgrind/valgrindengine.cpp b/src/plugins/valgrind/valgrindengine.cpp index 58919333f17..977ca797758 100644 --- a/src/plugins/valgrind/valgrindengine.cpp +++ b/src/plugins/valgrind/valgrindengine.cpp @@ -39,8 +39,10 @@ ValgrindToolRunner::ValgrindToolRunner(RunControl *runControl) m_settings.fromMap(runControl->settingsData(ANALYZER_VALGRIND_SETTINGS)); - connect(&m_runner, &ValgrindRunner::appendMessage, - this, &ValgrindToolRunner::appendMessage); + connect(&m_runner, + &ValgrindRunner::appendMessage, + this, + [this](const QString &msg, Utils::OutputFormat format) { appendMessage(msg, format); }); connect(&m_runner, &ValgrindRunner::valgrindExecuted, this, [this](const QString &commandLine) { appendMessage(commandLine, NormalMessageFormat);