From 595a9eb3544121c90044b8059146227e051fb9a1 Mon Sep 17 00:00:00 2001 From: Kevin Zehrer <103638980+kzdev-net@users.noreply.github.com> Date: Sun, 13 Oct 2024 10:02:51 -0500 Subject: [PATCH] Fix newPosition calculation in PositionStream method Updated the PositionStream method in UsingMemoryStreamSlim.ReadWrite.cs to handle cases where maxPosition is zero. Previously, newPosition was assigned a random integer within the range of maxPosition, which could lead to errors when maxPosition was zero. Now, newPosition is set to zero if maxPosition is zero, ensuring correct behavior. --- .../UsingMemoryStreamSlim.ReadWrite.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/Tst/Shared/KZDev.PerfUtils.MemoryStreamSlim.Tests.Shared/UsingMemoryStreamSlim.ReadWrite.cs b/Source/Tst/Shared/KZDev.PerfUtils.MemoryStreamSlim.Tests.Shared/UsingMemoryStreamSlim.ReadWrite.cs index 2e15069..87e5065 100644 --- a/Source/Tst/Shared/KZDev.PerfUtils.MemoryStreamSlim.Tests.Shared/UsingMemoryStreamSlim.ReadWrite.cs +++ b/Source/Tst/Shared/KZDev.PerfUtils.MemoryStreamSlim.Tests.Shared/UsingMemoryStreamSlim.ReadWrite.cs @@ -1131,7 +1131,7 @@ void WriteByteDataToStream (MemoryStreamSlim stream, byte[] dataCopyArray, ref i void PositionStream (MemoryStreamSlim stream, int maxPosition, out int dataCopyArrayPosition) { - int newPosition = RandomSource.GetRandomInteger(maxPosition); + int newPosition = (0 == maxPosition) ? 0 : RandomSource.GetRandomInteger(maxPosition); stream.Position = dataCopyArrayPosition = newPosition; }