summaryrefslogtreecommitdiff
path: root/bindings/hubbub
diff options
context:
space:
mode:
authorVincent Sanders <vince@netsurf-browser.org>2012-07-27 10:41:43 +0100
committerVincent Sanders <vince@netsurf-browser.org>2012-07-27 10:41:43 +0100
commit8bef33b1005ea97359a71786a84912c42edf97bb (patch)
treece06dc2f20cb12a04e1be547f2839de3e05967e5 /bindings/hubbub
parent542b8cb8feba8f15497eecf31cac53a7f4b17add (diff)
downloadlibdom-8bef33b1005ea97359a71786a84912c42edf97bb.tar.gz
libdom-8bef33b1005ea97359a71786a84912c42edf97bb.tar.bz2
Allow control over parser pause state
Diffstat (limited to 'bindings/hubbub')
-rw-r--r--bindings/hubbub/parser.c21
-rw-r--r--bindings/hubbub/parser.h10
2 files changed, 31 insertions, 0 deletions
diff --git a/bindings/hubbub/parser.c b/bindings/hubbub/parser.c
index 4a90511..6299da5 100644
--- a/bindings/hubbub/parser.c
+++ b/bindings/hubbub/parser.c
@@ -911,3 +911,24 @@ const char *dom_hubbub_parser_get_encoding(dom_hubbub_parser *parser,
return parser->encoding != NULL ? parser->encoding
: "Windows-1252";
}
+
+/**
+ * Set the Parse pause state.
+ *
+ * \param parser The parser object
+ * \param pause The pause state to set.
+ * \return DOM_HUBBUB_OK on success,
+ * DOM_HUBBUB_HUBBUB_ERR | <hubbub_error> on failure
+ */
+dom_hubbub_error dom_hubbub_parser_pause(dom_hubbub_parser *parser, bool pause)
+{
+ hubbub_error err;
+ hubbub_parser_optparams params;
+
+ params.pause_parse = pause;
+ err = hubbub_parser_setopt(parser->parser, HUBBUB_PARSER_PAUSE, &params);
+ if (err != HUBBUB_OK)
+ return DOM_HUBBUB_HUBBUB_ERR | err;
+
+ return DOM_HUBBUB_OK;
+}
diff --git a/bindings/hubbub/parser.h b/bindings/hubbub/parser.h
index 7af0dd0..16b02a8 100644
--- a/bindings/hubbub/parser.h
+++ b/bindings/hubbub/parser.h
@@ -77,4 +77,14 @@ dom_document *dom_hubbub_parser_get_document(dom_hubbub_parser *parser);
const char *dom_hubbub_parser_get_encoding(dom_hubbub_parser *parser,
dom_hubbub_encoding_source *source);
+/**
+ * Set the Parse pause state.
+ *
+ * \param parser The parser object
+ * \param pause The pause state to set.
+ * \return DOM_HUBBUB_OK on success,
+ * DOM_HUBBUB_HUBBUB_ERR | <hubbub_error> on failure
+ */
+dom_hubbub_error dom_hubbub_parser_pause(dom_hubbub_parser *parser, bool pause);
+
#endif