diff options
author | John Mark Bell <jmb@netsurf-browser.org> | 2009-04-15 11:02:53 +0000 |
---|---|---|
committer | John Mark Bell <jmb@netsurf-browser.org> | 2009-04-15 11:02:53 +0000 |
commit | b50dc50a2b25c7cc77843b25adc41575cfce7fd6 (patch) | |
tree | 68d81123fda9d7df3aa15375e12ea034896a1c87 /src/treebuilder/after_after_body.c | |
parent | 051158ffe97eb9b4a1a4b9b5ea719c7e38509200 (diff) | |
download | libhubbub-b50dc50a2b25c7cc77843b25adc41575cfce7fd6.tar.gz libhubbub-b50dc50a2b25c7cc77843b25adc41575cfce7fd6.tar.bz2 |
Manually merge r7070 into trunk
svn path=/trunk/hubbub/; revision=7082
Diffstat (limited to 'src/treebuilder/after_after_body.c')
-rw-r--r-- | src/treebuilder/after_after_body.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/treebuilder/after_after_body.c b/src/treebuilder/after_after_body.c index 372d12c..9644e3d 100644 --- a/src/treebuilder/after_after_body.c +++ b/src/treebuilder/after_after_body.c @@ -19,7 +19,9 @@ * * \param treebuilder The treebuilder instance * \param token The token to handle - * \return True to reprocess token, false otherwise + * \return HUBBUB_OK on completion, + * HUBBUB_REPROCESS to reprocess the token, + * appropriate error otherwise */ hubbub_error handle_after_after_body(hubbub_treebuilder *treebuilder, const hubbub_token *token) @@ -28,18 +30,17 @@ hubbub_error handle_after_after_body(hubbub_treebuilder *treebuilder, switch (token->type) { case HUBBUB_TOKEN_CHARACTER: - if (process_characters_expect_whitespace(treebuilder, - token, true)) { + err = process_characters_expect_whitespace(treebuilder, + token, true); + if (err == HUBBUB_REPROCESS) treebuilder->context.mode = IN_BODY; - err = HUBBUB_REPROCESS; - } break; case HUBBUB_TOKEN_COMMENT: - process_comment_append(treebuilder, token, + err = process_comment_append(treebuilder, token, treebuilder->context.document); break; case HUBBUB_TOKEN_DOCTYPE: - handle_in_body(treebuilder, token); + err = handle_in_body(treebuilder, token); break; case HUBBUB_TOKEN_START_TAG: { @@ -48,7 +49,7 @@ hubbub_error handle_after_after_body(hubbub_treebuilder *treebuilder, if (type == HTML) { /* Process as if "in body" */ - handle_in_body(treebuilder, token); + err = handle_in_body(treebuilder, token); } else { /** \todo parse error */ treebuilder->context.mode = IN_BODY; |