From d4c463ccdef83dd6b6cc546f75970b314dbc9e7a Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Sat, 13 Jun 2026 20:50:49 +0000 Subject: internal/compress/zlib: Pool adler32 --- internal/compress/zlib/reader_reset.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/internal/compress/zlib/reader_reset.go b/internal/compress/zlib/reader_reset.go index 17a8fc4e..8d641678 100644 --- a/internal/compress/zlib/reader_reset.go +++ b/internal/compress/zlib/reader_reset.go @@ -18,7 +18,7 @@ import ( // reset resets receiver to read a new zlib stream. func (z *Reader) reset(r io.Reader, dict []byte) error { - *z = Reader{decompressor: z.decompressor} + *z = Reader{decompressor: z.decompressor, digest: z.digest} var input flate.Reader if fr, ok := r.(flate.Reader); ok { @@ -96,7 +96,11 @@ func (z *Reader) reset(r io.Reader, dict []byte) error { return z.err } - z.digest = adler32.New() + if z.digest == nil { + z.digest = adler32.New() + } else { + z.digest.Reset() + } return nil } -- cgit v1.3.1-10-gc9f91