X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=util%2Fzlib-extra.c;h=3a75e50434b92b4ca1dd7d2fffed14e26fde40b8;hp=2b2cd8f9bda2af8a7dd2590c0ee3dfb10b066c5d;hb=HEAD;hpb=2f4beda434c59f9e2f5b7c32d26543bad7217ad4 diff --git a/util/zlib-extra.c b/util/zlib-extra.c index 2b2cd8f9..1f5f9dbe 100644 --- a/util/zlib-extra.c +++ b/util/zlib-extra.c @@ -47,6 +47,7 @@ gz_getline (void *talloc_ctx, char **bufptr, ssize_t *bytes_read, gzFile stream) int zlib_status = 0; (void) gzerror (stream, &zlib_status); switch (zlib_status) { + case Z_STREAM_END: case Z_OK: /* no data read before EOF */ if (offset == 0) @@ -70,16 +71,25 @@ gz_getline (void *talloc_ctx, char **bufptr, ssize_t *bytes_read, gzFile stream) if (buf == NULL) return UTIL_OUT_OF_MEMORY; } - SUCCESS: + SUCCESS: *bufptr = buf; *bytes_read = offset; return UTIL_SUCCESS; } -const char *gz_error_string (util_status_t status, gzFile file) +const char * +gz_error_string (util_status_t status, gzFile file) { if (status == UTIL_GZERROR) - return gzerror (file, NULL); + return gzerror_str (file); else return util_error_string (status); } + +const char * +gzerror_str (gzFile file) +{ + int dummy; + + return gzerror (file, &dummy); +}