diff options
author | John MacFarlane <jgm@berkeley.edu> | 2014-11-29 11:21:07 -0800 |
---|---|---|
committer | John MacFarlane <jgm@berkeley.edu> | 2014-11-29 11:21:07 -0800 |
commit | 3ff8fab34651e9acdc14be8cd0cbdd9df01004b2 (patch) | |
tree | e58fd1b5d226e4acc05eb2418f3d455cea9621dd /src/main.c | |
parent | c8a2c3df72132c8eb683d5373f10b4d99964b316 (diff) | |
parent | 46ec4da981af45591d25cb54c47a0afd061306c2 (diff) |
Merge pull request #225 from nwellnhof/push_parser
Push parser interface
Diffstat (limited to 'src/main.c')
-rw-r--r-- | src/main.c | 12 |
1 files changed, 5 insertions, 7 deletions
@@ -35,7 +35,7 @@ int main(int argc, char *argv[]) int *files; char buffer[4096]; cmark_parser *parser; - size_t offset; + size_t bytes; cmark_node *document; parser = cmark_parser_new(); @@ -69,9 +69,8 @@ int main(int argc, char *argv[]) } start_timer(); - while (fgets((char *)buffer, sizeof(buffer), fp)) { - offset = strlen((char *)buffer); - cmark_parser_process_line(parser, buffer, offset); + while ((bytes = fread(buffer, 1, sizeof(buffer), fp)) > 0) { + cmark_parser_push(parser, buffer, bytes); } end_timer("processing lines"); @@ -85,9 +84,8 @@ int main(int argc, char *argv[]) exit(0); */ - while (fgets((char *)buffer, sizeof(buffer), stdin)) { - offset = strlen((char *)buffer); - cmark_parser_process_line(parser, buffer, offset); + while ((bytes = fread(buffer, 1, sizeof(buffer), stdin)) > 0) { + cmark_parser_push(parser, buffer, bytes); } } |