diff options
| author | 2026-06-08 05:39:15 +0000 | |
|---|---|---|
| committer | 2026-06-08 05:39:15 +0000 | |
| commit | 2a82e5ab2a475484fb63da24ef8b96e1fc384f14 (patch) | |
| tree | 29cbead07815da86276baf2a765354ceb16bbd94 /internal/compress/zlib/reader.go | |
| parent | internal/compress/zlib: Fix imports and minor lint (diff) | |
| signature | No signature | |
internal/compress/zlib: Use lgo's safe sync.Pool
Diffstat (limited to 'internal/compress/zlib/reader.go')
| -rw-r--r-- | internal/compress/zlib/reader.go | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/internal/compress/zlib/reader.go b/internal/compress/zlib/reader.go index 25f422a6..f58a904a 100644 --- a/internal/compress/zlib/reader.go +++ b/internal/compress/zlib/reader.go @@ -38,10 +38,10 @@ import ( "errors" "hash" "io" - "sync" "lindenii.org/go/furgit/internal/compress/flate" "lindenii.org/go/lgo/intconv" + "lindenii.org/go/lgo/sync" ) const ( @@ -59,13 +59,9 @@ var ( ) //nolint:gochecknoglobals -var readerPool = sync.Pool{ - New: func() any { - r := new(Reader) - - return r - }, -} +var readerPool = sync.NewPool(func() *Reader { + return new(Reader) +}) // Reader reads and verifies one zlib stream. // @@ -93,12 +89,7 @@ func NewReader(r io.Reader) (*Reader, error) { // NewReaderDict ignores the dictionary if the compressed data does not refer to it. // If the compressed data refers to a different dictionary, NewReaderDict returns [ErrDictionary]. func NewReaderDict(r io.Reader, dict []byte) (*Reader, error) { - v := readerPool.Get() - - z, ok := v.(*Reader) - if !ok { - panic("zlib: pool returned unexpected type") - } + z := readerPool.Get() err := z.reset(r, dict) if err != nil { |
