From ba8e816e14c9d154279b16b28e33ecf96f0094bf Mon Sep 17 00:00:00 2001 From: disarray2077 <86157825+disarray2077@users.noreply.github.com> Date: Sun, 1 Aug 2021 17:44:23 -0300 Subject: [PATCH] Fix a error propagation issue in BufferedStream --- BeefLibs/corlib/src/IO/BufferedStream.bf | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/BeefLibs/corlib/src/IO/BufferedStream.bf b/BeefLibs/corlib/src/IO/BufferedStream.bf index a3d6048c..08bde0ac 100644 --- a/BeefLibs/corlib/src/IO/BufferedStream.bf +++ b/BeefLibs/corlib/src/IO/BufferedStream.bf @@ -88,14 +88,12 @@ namespace System.IO data.RemoveFromStart((.)spaceLeft); } - if (mWriteDirtyPos >= 0) - Try!(Flush()); + Try!(Flush()); if ((mBuffer == null) || (data.Length > mBuffer.Count)) { - var result = TryReadUnderlying(mPos, data); - if (result case .Ok(let len)) - mPos += len; + let len = Try!(TryReadUnderlying(mPos, data)); + mPos += len; return (.)(mPos - readStart); } @@ -148,10 +146,9 @@ namespace System.IO if ((mBuffer == null) || (data.Length > mBuffer.Count)) { - var result = TryWriteUnderlying(mPos, data); - if (result case .Ok(let len)) - mPos += len; - writeCount += result; + let len = Try!(TryWriteUnderlying(mPos, data)); + mPos += len; + writeCount += len; return writeCount; }