summaryrefslogtreecommitdiff
path: root/src/treebuilder
diff options
context:
space:
mode:
Diffstat (limited to 'src/treebuilder')
-rw-r--r--src/treebuilder/in_body.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/treebuilder/in_body.c b/src/treebuilder/in_body.c
index 257dcaf..698a485 100644
--- a/src/treebuilder/in_body.c
+++ b/src/treebuilder/in_body.c
@@ -1950,7 +1950,7 @@ void process_0generic_in_body(hubbub_treebuilder *treebuilder,
close_implied_end_tags(treebuilder, UNKNOWN);
- do {
+ while (treebuilder->context.current_node >= node) {
hubbub_ns ns;
void *node;
@@ -1964,7 +1964,10 @@ void process_0generic_in_body(hubbub_treebuilder *treebuilder,
node);
popped++;
- } while (otype != type);
+
+ if (otype == type)
+ break;
+ }
if (popped > 1) {
/** \todo parse error */