fixed HTML comments (chqrlie)

This commit is contained in:
Fabrice Bellard
2025-04-12 12:38:51 +02:00
parent 67b48ae4e6
commit 5b0c98a43a
3 changed files with 5 additions and 7 deletions

View File

@@ -20013,6 +20013,7 @@ typedef struct JSParseState {
JSToken token;
BOOL got_lf; /* true if got line feed before the current token */
const uint8_t *last_ptr;
const uint8_t *buf_start;
const uint8_t *buf_ptr;
const uint8_t *buf_end;
@@ -20883,8 +20884,8 @@ static __exception int next_token(JSParseState *s)
p += 2;
s->token.val = TOK_MINUS_ASSIGN;
} else if (p[1] == '-') {
if (s->allow_html_comments &&
p[2] == '>' && s->last_line_num != s->line_num) {
if (s->allow_html_comments && p[2] == '>' &&
(s->got_lf || s->last_ptr == s->buf_start)) {
/* Annex B: `-->` at beginning of line is an html comment end.
It extends to the end of the line.
*/
@@ -34235,7 +34236,7 @@ static void js_parse_init(JSContext *ctx, JSParseState *s,
s->ctx = ctx;
s->filename = filename;
s->line_num = 1;
s->buf_ptr = (const uint8_t *)input;
s->buf_start = s->buf_ptr = (const uint8_t *)input;
s->buf_end = s->buf_ptr + input_len;
s->token.val = ' ';
s->token.line_num = 1;