mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2025-07-08 23:22:04 +03:00
html: Fix EOF handling in comments
This commit is contained in:
28
HTMLparser.c
28
HTMLparser.c
@ -3196,13 +3196,29 @@ htmlParseComment(htmlParserCtxtPtr ctxt, int bogus) {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if ((cur == '-') && (NXT(1) == '-')) {
|
if (cur == '-') {
|
||||||
if (NXT(2) == '>') {
|
size_t avail = ctxt->input->end - ctxt->input->cur;
|
||||||
SKIP(3);
|
|
||||||
break;
|
if (avail < 2) {
|
||||||
} else if ((NXT(2) == '!') && (NXT(3) == '>')) {
|
SKIP(1);
|
||||||
SKIP(4);
|
|
||||||
break;
|
break;
|
||||||
|
} else if (NXT(1) == '-') {
|
||||||
|
if (avail < 3) {
|
||||||
|
SKIP(2);
|
||||||
|
break;
|
||||||
|
} else if (NXT(2) == '>') {
|
||||||
|
SKIP(3);
|
||||||
|
break;
|
||||||
|
} else if (NXT(2) == '!') {
|
||||||
|
if (avail < 4) {
|
||||||
|
SKIP(3);
|
||||||
|
break;
|
||||||
|
|
||||||
|
} else if (NXT(3) == '>') {
|
||||||
|
SKIP(4);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user