From b48d6bc1e0267aa01b1acc92a72ace9d980fcdb9 Mon Sep 17 00:00:00 2001 From: CongcongCai Date: Sun, 25 Jul 2021 00:51:09 +0800 Subject: [PATCH] fix: when parser error, infinite loop in skipStatement (#1999) --- src/parser.ts | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/parser.ts b/src/parser.ts index 9e9684a627..486d193219 100644 --- a/src/parser.ts +++ b/src/parser.ts @@ -4296,10 +4296,18 @@ export class Parser extends DiagnosticEmitter { tn.readIdentifier(); break; } - case Token.STRINGLITERAL: { + case Token.STRINGLITERAL:{ tn.readString(); break; } + case Token.TEMPLATELITERAL: { + tn.readString(); + while(tn.readingTemplateString){ + this.skipBlock(tn); + tn.readString(CharCode.BACKTICK); + } + break; + } case Token.INTEGERLITERAL: { tn.readInteger(); tn.checkForIdentifierStartAfterNumericLiteral();