From f8dc3de398a6c8cf7d400b1f6b4a1a255f894a43 Mon Sep 17 00:00:00 2001 From: Avril Date: Wed, 23 Jun 2021 22:00:07 +0100 Subject: [PATCH] fix cookie return vals --- src/ffi/wrapper.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/ffi/wrapper.c b/src/ffi/wrapper.c index 81f0699..24f4701 100644 --- a/src/ffi/wrapper.c +++ b/src/ffi/wrapper.c @@ -18,7 +18,8 @@ static ssize_t cc20c_read(void* cookie, char* buffer, size_t size) static ssize_t cc20c_write(void* cookie, const char* buffer, size_t size) { - return cc20_write(buffer, 1, size, cookie); + register int c = cc20_write(buffer, 1, size, cookie); + return c < 0 ? 0 : c; } static int cc20c_seek(void* cookie, off64_t* pos, int w) @@ -32,10 +33,10 @@ static int cc20c_seek(void* cookie, off64_t* pos, int w) static int cc20c_close(void* cookie) { - struct cc20_metadata meta; + struct cc20_metadata meta ={0}; cc20_close_sink(cookie, &meta); if(meta.backing) fclose(meta.backing); - else return 1; + else return -1; return 0; }