diff options
author | Dodji Seketeli <dodji@src.gnome.org> | 2003-03-20 21:29:07 +0000 |
---|---|---|
committer | Dodji Seketeli <dodji@src.gnome.org> | 2003-03-20 21:29:07 +0000 |
commit | 3e55266839340793845b8527b65542d1e4b5fc11 (patch) | |
tree | 68df3276dd14404867e9716856d6be1a1907fd61 /src/cr-parser.c | |
parent | a189ebbcc9b05cda2ea77f84db8a65855f5b3fb7 (diff) | |
download | libcroco-3e55266839340793845b8527b65542d1e4b5fc11.tar.gz |
fixed a small bug in the tokenizer.
Provided better support for in memory data parsing.
Diffstat (limited to 'src/cr-parser.c')
-rw-r--r-- | src/cr-parser.c | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/src/cr-parser.c b/src/cr-parser.c index 02197da..468f525 100644 --- a/src/cr-parser.c +++ b/src/cr-parser.c @@ -4930,6 +4930,29 @@ cr_parser_set_tknzr (CRParser *a_this, CRTknzr *a_tknzr) +enum CRStatus +cr_parser_parse_buf (CRParser *a_this, guchar *a_buf, + gulong a_len, enum CREncoding a_enc) +{ + enum CRStatus status = CR_ERROR ; + CRTknzr *tknzr = NULL ; + + g_return_val_if_fail (a_this && PRIVATE (a_this) + && a_buf, + CR_BAD_PARAM_ERROR) ; + + tknzr = cr_tknzr_new_from_buf (a_buf,a_len, + a_enc, FALSE) ; + + g_return_val_if_fail (tknzr != NULL, CR_ERROR) ; + + status = cr_parser_set_tknzr (a_this, tknzr) ; + g_return_val_if_fail (status == CR_OK, CR_ERROR) ; + + status = cr_parser_parse (a_this) ; + + return status ; +} /** *Parses a the given in parameter. @@ -4939,7 +4962,7 @@ cr_parser_set_tknzr (CRParser *a_this, CRTknzr *a_tknzr) *@return CR_OK upon successfull completion, an error code otherwise. */ enum CRStatus -cr_parser_parse_from_file (CRParser *a_this, guchar *a_file_uri, +cr_parser_parse_file (CRParser *a_this, guchar *a_file_uri, enum CREncoding a_enc) { enum CRStatus status = CR_ERROR ; |