From 5a6a76f484cca46d4e788f2e62b9fafb1f5ea6cf Mon Sep 17 00:00:00 2001 From: David Robillard Date: Fri, 13 Jul 2018 21:04:54 +0200 Subject: Separate ByteSink from Writer --- src/serdi.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'src/serdi.c') diff --git a/src/serdi.c b/src/serdi.c index 13438725..6259a6bf 100644 --- a/src/serdi.c +++ b/src/serdi.c @@ -189,15 +189,17 @@ main(int argc, char** argv) SerdWorld* world = serd_world_new(); SerdEnv* env = serd_env_new(base); - const SerdStyleFlags output_style = ((ascii ? SERD_STYLE_ASCII : 0) | - (bulk_write ? SERD_STYLE_BULK : 0)); + const SerdStyleFlags output_style = (ascii ? SERD_STYLE_ASCII : 0); + + SerdByteSink* byte_sink = serd_byte_sink_new( + (SerdWriteFunc)fwrite, out_fd, bulk_write ? 4096 : 1); SerdWriter* writer = serd_writer_new(world, output_syntax, output_style, env, - (SerdWriteFunc)fwrite, - out_fd); + (SerdWriteFunc)serd_byte_sink_write, + byte_sink); SerdReader* reader = serd_reader_new( world, input_syntax, serd_writer_get_sink(writer), stack_size); @@ -238,8 +240,8 @@ main(int argc, char** argv) serd_reader_finish(reader); serd_reader_free(reader); - serd_writer_finish(writer); serd_writer_free(writer); + serd_byte_sink_free(byte_sink); serd_env_free(env); serd_node_free(base); serd_world_free(world); -- cgit v1.2.1