summaryrefslogtreecommitdiff
path: root/src/treebuilder/after_after_frameset.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/treebuilder/after_after_frameset.c')
-rw-r--r--src/treebuilder/after_after_frameset.c16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/treebuilder/after_after_frameset.c b/src/treebuilder/after_after_frameset.c
index 65981ef..11fcf5a 100644
--- a/src/treebuilder/after_after_frameset.c
+++ b/src/treebuilder/after_after_frameset.c
@@ -27,10 +27,20 @@ bool handle_after_after_frameset(hubbub_treebuilder *treebuilder,
bool reprocess = false;
switch (token->type) {
+ case HUBBUB_TOKEN_CHARACTER:
+ if (process_characters_expect_whitespace(treebuilder,
+ token, true)) {
+ treebuilder->context.mode = IN_FRAMESET;
+ reprocess = true;
+ }
+ break;
case HUBBUB_TOKEN_COMMENT:
+ process_comment_append(treebuilder, token,
+ treebuilder->context.document);
+ break;
case HUBBUB_TOKEN_DOCTYPE:
- case HUBBUB_TOKEN_CHARACTER:
- handle_in_body(treebuilder, token);
+ /** \todo parse error */
+ /* ignore token */
break;
case HUBBUB_TOKEN_START_TAG:
{
@@ -42,7 +52,7 @@ bool handle_after_after_frameset(hubbub_treebuilder *treebuilder,
handle_in_body(treebuilder, token);
} else {
/** \todo parse error */
- treebuilder->context.mode = IN_BODY;
+ treebuilder->context.mode = IN_FRAMESET;
reprocess = true;
}
}