summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/tokeniser/tokeniser.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/tokeniser/tokeniser.c b/src/tokeniser/tokeniser.c
index bc460df..a5a35a0 100644
--- a/src/tokeniser/tokeniser.c
+++ b/src/tokeniser/tokeniser.c
@@ -2951,6 +2951,9 @@ bool hubbub_tokeniser_consume_character_reference(hubbub_tokeniser *tokeniser)
if (c == '\t' || c == '\n' || c == '\f' || c == ' ' ||
c == '<' || c == '&' || c == HUBBUB_INPUTSTREAM_EOF ||
(allowed_char && c == allowed_char)) {
+ tokeniser->context.match_entity.complete = true;
+ /* rewind to the '&' (de-consume) */
+ hubbub_inputstream_rewind(tokeniser->input, 1);
return true;
} else if (c == '#') {
pos = hubbub_inputstream_cur_pos(tokeniser->input, &len);