summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/tokeniser/tokeniser.c2
-rw-r--r--test/data/tree-construction/regression.dat10
2 files changed, 11 insertions, 1 deletions
diff --git a/src/tokeniser/tokeniser.c b/src/tokeniser/tokeniser.c
index 54ad118..a79d59e 100644
--- a/src/tokeniser/tokeniser.c
+++ b/src/tokeniser/tokeniser.c
@@ -2811,7 +2811,7 @@ bool hubbub_tokeniser_handle_named_entity(hubbub_tokeniser *tokeniser)
return false;
cptr = parserutils_inputstream_peek(tokeniser->input,
- ctx->match_entity.offset + ctx->match_entity.length,
+ ctx->match_entity.offset + ctx->match_entity.length - 1,
&len);
c = CHAR(cptr);
diff --git a/test/data/tree-construction/regression.dat b/test/data/tree-construction/regression.dat
index bb99546..1423ea7 100644
--- a/test/data/tree-construction/regression.dat
+++ b/test/data/tree-construction/regression.dat
@@ -29,3 +29,13 @@
| <center>
| <font>
+#data
+<a href="a&amp;b&amp;c">Foo</a>
+#errors
+#document
+| <html>
+| <head>
+| <body>
+| <a>
+| href="a&b&c"
+| "Foo"