diff options
-rw-r--r-- | lexers/LexCmake.cxx | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/lexers/LexCmake.cxx b/lexers/LexCmake.cxx index 70e9dee98..fb79abf26 100644 --- a/lexers/LexCmake.cxx +++ b/lexers/LexCmake.cxx @@ -226,14 +226,13 @@ static void ColouriseCmakeDoc(unsigned int startPos, int length, int, WordList * break; case SCE_CMAKE_COMMENT: - if ( cNextChar == '\n' || cNextChar == '\r' ) { - // Special case: - if ( cCurrChar == '\\' ) { + if ( cCurrChar == '\n' || cCurrChar == '\r' ) { + if ( styler.SafeGetCharAt(i-1) == '\\' ) { styler.ColourTo(i-2,state); - styler.ColourTo(i,SCE_CMAKE_DEFAULT); + styler.ColourTo(i-1,SCE_CMAKE_DEFAULT); } else { - styler.ColourTo(i,state); + styler.ColourTo(i-1,state); state = SCE_CMAKE_DEFAULT; } } @@ -335,10 +334,7 @@ static void ColouriseCmakeDoc(unsigned int startPos, int length, int, WordList * break; } - if ( state == SCE_CMAKE_COMMENT) { - styler.ColourTo(i,state); - } - else if ( state == SCE_CMAKE_STRINGDQ || state == SCE_CMAKE_STRINGLQ || state == SCE_CMAKE_STRINGRQ ) { + if ( state == SCE_CMAKE_STRINGDQ || state == SCE_CMAKE_STRINGLQ || state == SCE_CMAKE_STRINGRQ ) { bool bIngoreNextDollarSign = false; if ( bVarInString && cCurrChar == '$' ) { |