aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/qmljs/parser/qmljslexer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/qmljs/parser/qmljslexer.cpp')
-rw-r--r--src/libs/qmljs/parser/qmljslexer.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/libs/qmljs/parser/qmljslexer.cpp b/src/libs/qmljs/parser/qmljslexer.cpp
index 0ae581724d..97f33bdda6 100644
--- a/src/libs/qmljs/parser/qmljslexer.cpp
+++ b/src/libs/qmljs/parser/qmljslexer.cpp
@@ -877,12 +877,13 @@ int Lexer::scanString(ScanStringMode mode)
// in case we just parsed a \r, we need to reset this flag to get things working
// correctly in the loop below and afterwards
_skipLinefeed = false;
-
+ bool first = true;
if (_engine) {
while (_codePtr <= _endPtr) {
if (isLineTerminator()) {
if ((quote == QLatin1Char('`') || qmlMode())) {
- --_currentLineNumber;
+ if (first)
+ --_currentLineNumber;
break;
}
_errorCode = IllegalCharacter;
@@ -910,6 +911,7 @@ int Lexer::scanString(ScanStringMode mode)
// don't use scanChar() here, that would transform \r sequences and the midRef() call would create the wrong result
_char = *_codePtr++;
++_currentColumnNumber;
+ first = false;
}
}