Skip to content

Commit 09086f3

Browse files
committed
Back to Task.Run for async CopyTo..
1 parent 7a554cf commit 09086f3

File tree

3 files changed

+11
-2
lines changed

3 files changed

+11
-2
lines changed

src/Listener/Requests/PodeRequestHandler.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -468,7 +468,7 @@ public async Task Write(FileStream stream, CancellationToken cancellationToken)
468468
return;
469469
}
470470

471-
await stream.CopyToAsync(InputStream, cancellationToken).ConfigureAwait(false);
471+
await PodeHelpers.CopyFileTo(stream, InputStream, cancellationToken).ConfigureAwait(false);
472472
}
473473

474474
public async Task Write(MemoryStream stream, CancellationToken cancellationToken)

src/Listener/Responses/PodeHttpResponse.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ public override async Task WriteFile(FileSystemInfo file)
154154

155155
using (var fileStream = fileInfo.OpenRead())
156156
{
157-
await fileStream.CopyToAsync(OutputStream, Context.Listener.CancellationToken).ConfigureAwait(false);
157+
await PodeHelpers.CopyFileTo(fileStream, OutputStream, Context.Listener.CancellationToken).ConfigureAwait(false);
158158
}
159159
}
160160

src/Listener/Utilities/PodeHelpers.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,15 @@ public static async Task WriteTo(MemoryStream stream, byte[] array, int startInd
160160
}
161161
}
162162

163+
public static async Task CopyFileTo(FileStream fileStream, Stream stream, CancellationToken cancellationToken)
164+
{
165+
// need to use Task.Run as CopyToAsync is missing netstandard2.0
166+
await Task.Run(() =>
167+
{
168+
fileStream.CopyTo(stream);
169+
}, cancellationToken).ConfigureAwait(false);
170+
}
171+
163172
public static byte[] Slice(byte[] array, int startIndex, int count = 0)
164173
{
165174
// Validate startIndex and adjust count if needed

0 commit comments

Comments
 (0)