From e511b14b2ab08d86dc9c15d41b3c5da2f7d8b751 Mon Sep 17 00:00:00 2001 From: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> Date: Wed, 10 Aug 2022 15:46:23 -0700 Subject: Fix spurious unhandled promise rejection error --- src/bun.js/builtins/js/ReadableStreamInternals.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/bun.js/builtins/js') diff --git a/src/bun.js/builtins/js/ReadableStreamInternals.js b/src/bun.js/builtins/js/ReadableStreamInternals.js index 3a02669dc..a6604a014 100644 --- a/src/bun.js/builtins/js/ReadableStreamInternals.js +++ b/src/bun.js/builtins/js/ReadableStreamInternals.js @@ -793,7 +793,8 @@ function readDirectStream(stream, sink, underlyingSource) { function close(stream, reason) { if (reason && underlyingSource?.cancel) { try { - underlyingSource.cancel(reason); + var prom = underlyingSource.cancel(reason); + @markPromiseAsHandled(prom); } catch (e) { } @@ -890,7 +891,7 @@ async function readStreamIntoSink(stream, sink, isNative) { } var wroteCount = many.value.length; const highWaterMark = @getByIdDirectPrivate(stream, "highWaterMark"); - if (isNative) @startDirectStream.@call(sink, stream, @undefined, () => !didThrow && stream.cancel()); + if (isNative) @startDirectStream.@call(sink, stream, @undefined, () => !didThrow && @markPromiseAsHandled(stream.cancel())); if (highWaterMark) sink.start({ highWaterMark }); @@ -924,7 +925,8 @@ async function readStreamIntoSink(stream, sink, isNative) { try { reader = @undefined; - stream.cancel(e); + const prom = stream.cancel(e); + @markPromiseAsHandled(prom); } catch (j) {} if (sink && !didClose) { -- cgit v1.2.3