Skip to content

Commit e6c78c2

Browse files
Update StreamExtensions.cs
1 parent 30092db commit e6c78c2

File tree

1 file changed

+15
-10
lines changed

1 file changed

+15
-10
lines changed

src/ImageSharp/Common/Extensions/StreamExtensions.cs

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -48,23 +48,28 @@ public static void Skip(this Stream stream, int count)
4848

4949
if (stream.CanSeek)
5050
{
51-
stream.Seek(count, SeekOrigin.Current); // Position += count;
51+
stream.Seek(count, SeekOrigin.Current);
5252
return;
5353
}
5454

55-
var buffer = ArrayPool<byte>.Shared.Rent(count);
56-
while (count > 0)
55+
byte[] buffer = ArrayPool<byte>.Shared.Rent(count);
56+
try
5757
{
58-
int bytesRead = stream.Read(buffer, 0, count);
59-
if (bytesRead == 0)
58+
while (count > 0)
6059
{
61-
break;
62-
}
60+
int bytesRead = stream.Read(buffer, 0, count);
61+
if (bytesRead == 0)
62+
{
63+
break;
64+
}
6365

64-
count -= bytesRead;
66+
count -= bytesRead;
67+
}
68+
}
69+
finally
70+
{
71+
ArrayPool<byte>.Shared.Return(buffer);
6572
}
66-
67-
ArrayPool<byte>.Shared.Return(buffer);
6873
}
6974

7075
public static void Read(this Stream stream, IManagedByteBuffer buffer)

0 commit comments

Comments
 (0)