zlib/backport-Fix-deflateEnd-to-not-report-an-error-at-start-of-ra.patch
zhoupengcheng fce1c5536a zlib:backport upstream patch
(cherry picked from commit ee65ab90886d1240dc7ef6b6afc98012d7c18b2a)
2024-05-07 19:57:31 +08:00

37 lines
1.0 KiB
Diff

From c376a417a724c21173f40765bd643388523b16f7 Mon Sep 17 00:00:00 2001
From: Mark Adler <zlib@madler.net>
Date: Thu, 12 Oct 2017 21:07:22 -0700
Subject: [PATCH] Fix deflateEnd() to not report an error at start of raw deflate.
Reference:https://github.com/madler/zlib/commit/c376a417a724c21173f40765bd643388523b16f7
Conflict:NA
---
deflate.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/deflate.c b/deflate.c
index 568eadd..425babc 100644
--- a/deflate.c
+++ b/deflate.c
@@ -491,7 +491,7 @@ int ZEXPORT deflateResetKeep (strm)
#ifdef GZIP
s->wrap == 2 ? GZIP_STATE :
#endif
- s->wrap ? INIT_STATE : BUSY_STATE;
+ INIT_STATE;
strm->adler =
#ifdef GZIP
s->wrap == 2 ? crc32(0L, Z_NULL, 0) :
@@ -814,6 +814,8 @@ int ZEXPORT deflate (strm, flush)
}
/* Write the header */
+ if (s->status == INIT_STATE && s->wrap == 0)
+ s->status = BUSY_STATE;
if (s->status == INIT_STATE) {
/* zlib header */
uInt header = (Z_DEFLATED + ((s->w_bits-8)<<4)) << 8;
--
2.23.0