Fix highlighting of C/C++ line continuation backslashes

The backslash itself is not a token, so we must make sure to only format
the trailing whitespace characters as visual whitespace, instead of
everything trailing.

Broke in a92694596e

Task-number: QTCREATORBUG-987
Change-Id: I4e9e84d29513ea317d7e3bde6c6b4c43749cb649
Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
Eike Ziller
2017-05-16 12:59:36 +02:00
parent a901916710
commit 21a246ac38
3 changed files with 8 additions and 7 deletions

View File

@@ -214,7 +214,7 @@ void CppHighlighter::highlightBlock(const QString &text)
// mark the trailing white spaces
const int lastTokenEnd = tokens.last().utf16charsEnd();
if (text.length() > lastTokenEnd)
setFormatWithSpaces(text, lastTokenEnd, text.length() - lastTokenEnd, formatForCategory(C_VISUAL_WHITESPACE));
formatSpaces(text, lastTokenEnd, text.length() - lastTokenEnd);
if (!initialLexerState && lexerState && !tokens.isEmpty()) {
const Token &lastToken = tokens.last();