From a2b61271a362d4881b9f67fb92455f4fbbab06df Mon Sep 17 00:00:00 2001 From: Mark Adler Date: Mon, 12 May 2025 10:06:03 -0700 Subject: Allow gzflush() to write empty gzip members. Before this, a gzflush() with Z_FINISH and no data to write would do nothing. Now it will write an empty gzip member. --- gzwrite.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gzwrite.c b/gzwrite.c index ef9ffee5..1fd2046f 100644 --- a/gzwrite.c +++ b/gzwrite.c @@ -88,8 +88,9 @@ local int gz_comp(gz_statep state, int flush) { /* check for a pending reset */ if (state->reset) { - /* don't start a new gzip member unless there is data to write */ - if (strm->avail_in == 0) + /* don't start a new gzip member unless there is data to write and + we're not flushing */ + if (strm->avail_in == 0 && flush == Z_NO_FLUSH) return 0; deflateReset(strm); state->reset = 0; -- cgit v1.2.3-55-g6feb