From 01d4fdcfe582e986d1b31131cefb8466996b2f8a Mon Sep 17 00:00:00 2001 From: Radek Zikmund Date: Tue, 12 May 2026 14:31:38 +0200 Subject: [PATCH] Guard against overflow in SubReadStream --- .../System.Formats.Tar/src/System/Formats/Tar/SubReadStream.cs | 2 +- .../src/System/IO/Compression/ZipCustomStreams.cs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libraries/System.Formats.Tar/src/System/Formats/Tar/SubReadStream.cs b/src/libraries/System.Formats.Tar/src/System/Formats/Tar/SubReadStream.cs index efa933d02fa70b..bf152c53c09def 100644 --- a/src/libraries/System.Formats.Tar/src/System/Formats/Tar/SubReadStream.cs +++ b/src/libraries/System.Formats.Tar/src/System/Formats/Tar/SubReadStream.cs @@ -29,7 +29,7 @@ public SubReadStream(Stream superStream, long startPosition, long maxLength) } _startInSuperStream = startPosition; _positionInSuperStream = startPosition; - _endInSuperStream = startPosition + maxLength; + _endInSuperStream = checked(startPosition + maxLength); _superStream = superStream; _isDisposed = false; _hasReachedEnd = false; diff --git a/src/libraries/System.IO.Compression/src/System/IO/Compression/ZipCustomStreams.cs b/src/libraries/System.IO.Compression/src/System/IO/Compression/ZipCustomStreams.cs index ea2fc10ec55699..2fa9c22ad70dbe 100644 --- a/src/libraries/System.IO.Compression/src/System/IO/Compression/ZipCustomStreams.cs +++ b/src/libraries/System.IO.Compression/src/System/IO/Compression/ZipCustomStreams.cs @@ -264,7 +264,7 @@ public SubReadStream(Stream superStream, long startPosition, long maxLength) { _startInSuperStream = startPosition; _positionInSuperStream = startPosition; - _endInSuperStream = startPosition + maxLength; + _endInSuperStream = checked(startPosition + maxLength); _superStream = superStream; _canRead = true; _isDisposed = false;