From a0af0604d11ab1144e4be00ec73033e66013ab16 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 26 Jan 2026 12:11:16 +0000 Subject: [PATCH] Add disposal checks to RefillCache methods Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com> --- src/SharpCompress/IO/BufferedSubStream.cs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/SharpCompress/IO/BufferedSubStream.cs b/src/SharpCompress/IO/BufferedSubStream.cs index 9ee22c05..d2302b3a 100755 --- a/src/SharpCompress/IO/BufferedSubStream.cs +++ b/src/SharpCompress/IO/BufferedSubStream.cs @@ -69,6 +69,11 @@ internal class BufferedSubStream : SharpCompressStream, IStreamStack private void RefillCache() { + if (_isDisposed) + { + throw new ObjectDisposedException(nameof(BufferedSubStream)); + } + var count = (int)Math.Min(BytesLeftToRead, _cache!.Length); _cacheOffset = 0; if (count == 0) @@ -91,6 +96,11 @@ internal class BufferedSubStream : SharpCompressStream, IStreamStack private async ValueTask RefillCacheAsync(CancellationToken cancellationToken) { + if (_isDisposed) + { + throw new ObjectDisposedException(nameof(BufferedSubStream)); + } + var count = (int)Math.Min(BytesLeftToRead, _cache!.Length); _cacheOffset = 0; if (count == 0)