From 3c547fe0547c924ca5174d9aa36720ddb441480a Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Wed, 14 Mar 2012 21:53:00 +0100 Subject: [PATCH 1/1] client/server: zlib error code fixup Signed-off-by: Jens Axboe --- client.c | 3 ++- server.c | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/client.c b/client.c index f7b050b0..678a6275 100644 --- a/client.c +++ b/client.c @@ -1000,7 +1000,8 @@ static struct cmd_iolog_pdu *convert_iolog(struct fio_net_cmd *cmd) stream.avail_out = this_chunk; stream.next_out = p; err = inflate(&stream, Z_NO_FLUSH); - if (err != Z_OK) { + /* may be Z_OK, or Z_STREAM_END */ + if (err < 0) { log_err("fio: inflate error %d\n", err); free(ret); ret = NULL; diff --git a/server.c b/server.c index 2da0c83e..7ab01efa 100644 --- a/server.c +++ b/server.c @@ -955,7 +955,10 @@ int fio_send_iolog(struct thread_data *td, struct io_log *log, const char *name) stream.avail_out = FIO_SERVER_MAX_FRAGMENT_PDU; stream.next_out = out_pdu; - assert(deflate(&stream, Z_FINISH) == Z_OK); + ret = deflate(&stream, Z_FINISH); + /* may be Z_OK, or Z_STREAM_END */ + if (ret < 0) + goto err_zlib; this_len = FIO_SERVER_MAX_FRAGMENT_PDU - stream.avail_out; -- 2.25.1