forked from qt-creator/qt-creator
OutputFormatter: Prevent consecutive newlines from being ignored
Amends b0cad9e9c7
.
Fixes: QTCREATORBUG-24668
Change-Id: I19a2ea71be91ded8f2c458537dae62a3021afe52
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
@@ -287,6 +287,13 @@ void OutputFormatter::overridePostPrintAction(const PostPrintAction &postPrintAc
|
||||
void OutputFormatter::doAppendMessage(const QString &text, OutputFormat format)
|
||||
{
|
||||
QTextCharFormat charFmt = charFormat(format);
|
||||
|
||||
// This might cause insertion of a newline character.
|
||||
if (text.isEmpty()) {
|
||||
append(text, charFmt);
|
||||
return;
|
||||
}
|
||||
|
||||
QList<FormattedText> formattedText = parseAnsi(text, charFmt);
|
||||
const QString cleanLine = std::accumulate(formattedText.begin(), formattedText.end(), QString(),
|
||||
[](const FormattedText &t1, const FormattedText &t2) { return t1.text + t2.text; });
|
||||
|
@@ -624,7 +624,7 @@ void Internal::CorePlugin::testOutputFormatter()
|
||||
{
|
||||
const QString input =
|
||||
"B to be handled by B\r\n"
|
||||
"not to be handled\n"
|
||||
"not to be handled\n\n\n\n"
|
||||
"A to be handled by A\n"
|
||||
"continuation for A\r\n"
|
||||
"B looks like B, but still continuation for A\r\n"
|
||||
@@ -636,7 +636,7 @@ void Internal::CorePlugin::testOutputFormatter()
|
||||
"B to be handled by B\n";
|
||||
const QString output =
|
||||
"handled by B\n"
|
||||
"not to be handled\n"
|
||||
"not to be handled\n\n\n\n"
|
||||
"handled by A\n"
|
||||
"handled by A\n"
|
||||
"handled by A\n"
|
||||
|
Reference in New Issue
Block a user