Update stream read operations to use new helper methods

This commit is contained in:
Dean Herbert 2022-02-11 16:02:25 +09:00
parent 176bb4a4e2
commit 908c31c687
2 changed files with 5 additions and 14 deletions

View File

@ -4,6 +4,7 @@
#nullable enable
using System.IO;
using osu.Framework.Extensions;
using osu.Game.IO.Archives;
using osu.Game.Stores;
using osu.Game.Utils;
@ -63,9 +64,7 @@ namespace osu.Game.Database
if (!(stream is MemoryStream memoryStream))
{
// This isn't used in any current path. May need to reconsider for performance reasons (ie. if we don't expect the incoming stream to be copied out).
byte[] buffer = new byte[stream.Length];
stream.Read(buffer, 0, (int)stream.Length);
memoryStream = new MemoryStream(buffer);
memoryStream = new MemoryStream(stream.ReadAllBytesToArray());
}
if (ZipUtils.IsZipArchive(memoryStream))

View File

@ -5,6 +5,7 @@ using System.Collections.Generic;
using System.IO;
using System.Threading;
using System.Threading.Tasks;
using osu.Framework.Extensions;
using osu.Framework.IO.Stores;
namespace osu.Game.IO.Archives
@ -35,14 +36,7 @@ namespace osu.Game.IO.Archives
public virtual byte[] Get(string name)
{
using (Stream input = GetStream(name))
{
if (input == null)
return null;
byte[] buffer = new byte[input.Length];
input.Read(buffer);
return buffer;
}
return input?.ReadAllBytesToArray();
}
public async Task<byte[]> GetAsync(string name, CancellationToken cancellationToken = default)
@ -52,9 +46,7 @@ namespace osu.Game.IO.Archives
if (input == null)
return null;
byte[] buffer = new byte[input.Length];
await input.ReadAsync(buffer, cancellationToken).ConfigureAwait(false);
return buffer;
return await input.ReadAllBytesToArrayAsync(cancellationToken).ConfigureAwait(false);
}
}
}