Add some assertions to Stream.Read in System.Text.Encoding.CodePages (#69414)
authorEric Erhardt <eric.erhardt@microsoft.com>
Tue, 17 May 2022 13:27:07 +0000 (08:27 -0500)
committerGitHub <noreply@github.com>
Tue, 17 May 2022 13:27:07 +0000 (08:27 -0500)
commitd85c766e365c7ccf4aedc38e8fa17036bc69f588
tree3706d4c20b819e2b9af604f7a82342f2cd49f1e6
parent2157b2818e13953e444e21394fc3b5722a040848
Add some assertions to Stream.Read in System.Text.Encoding.CodePages (#69414)

* Add some assertions to Stream.Read in System.Text.Encoding.CodePages

BaseCodePageEncoding is relying on Stream.Read to read a full buffer of data in a single read. This is safe to assume because the only stream ever used is an UnmanagedMemoryStream, which will just copy the data to the buffer.

Adding some asserts to the code to make this assumption explicit.
src/libraries/System.Text.Encoding.CodePages/src/System/Text/BaseCodePageEncoding.cs
src/libraries/System.Text.Encoding.CodePages/src/System/Text/BaseCodePageEncoding.netcoreapp.cs
src/libraries/System.Text.Encoding.CodePages/src/System/Text/DBCSCodePageEncoding.cs
src/libraries/System.Text.Encoding.CodePages/src/System/Text/SBCSCodePageEncoding.cs