aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js/builtins/cpp/ReadableStreamInternalsBuiltins.cpp
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-08-10 15:46:23 -0700
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-08-10 15:46:23 -0700
commite511b14b2ab08d86dc9c15d41b3c5da2f7d8b751 (patch)
treea4e180e5237799b8faa895efbd150f8c605fc255 /src/bun.js/builtins/cpp/ReadableStreamInternalsBuiltins.cpp
parent6ca32d800d8dd9fa76e0f05dfa5e4b2526c488f5 (diff)
downloadbun-e511b14b2ab08d86dc9c15d41b3c5da2f7d8b751.tar.gz
bun-e511b14b2ab08d86dc9c15d41b3c5da2f7d8b751.tar.zst
bun-e511b14b2ab08d86dc9c15d41b3c5da2f7d8b751.zip
Fix spurious unhandled promise rejection error
Diffstat (limited to 'src/bun.js/builtins/cpp/ReadableStreamInternalsBuiltins.cpp')
-rw-r--r--src/bun.js/builtins/cpp/ReadableStreamInternalsBuiltins.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/bun.js/builtins/cpp/ReadableStreamInternalsBuiltins.cpp b/src/bun.js/builtins/cpp/ReadableStreamInternalsBuiltins.cpp
index ab10bdeea..e2614c7e3 100644
--- a/src/bun.js/builtins/cpp/ReadableStreamInternalsBuiltins.cpp
+++ b/src/bun.js/builtins/cpp/ReadableStreamInternalsBuiltins.cpp
@@ -975,7 +975,7 @@ const char* const s_readableStreamInternalsIsReadableStreamDefaultControllerCode
const JSC::ConstructAbility s_readableStreamInternalsReadDirectStreamCodeConstructAbility = JSC::ConstructAbility::CannotConstruct;
const JSC::ConstructorKind s_readableStreamInternalsReadDirectStreamCodeConstructorKind = JSC::ConstructorKind::None;
const JSC::ImplementationVisibility s_readableStreamInternalsReadDirectStreamCodeImplementationVisibility = JSC::ImplementationVisibility::Public;
-const int s_readableStreamInternalsReadDirectStreamCodeLength = 1534;
+const int s_readableStreamInternalsReadDirectStreamCodeLength = 1582;
static const JSC::Intrinsic s_readableStreamInternalsReadDirectStreamCodeIntrinsic = JSC::NoIntrinsic;
const char* const s_readableStreamInternalsReadDirectStreamCode =
"(function (stream, sink, underlyingSource) {\n" \
@@ -991,7 +991,8 @@ const char* const s_readableStreamInternalsReadDirectStreamCode =
" function close(stream, reason) {\n" \
" if (reason && underlyingSource?.cancel) {\n" \
" try {\n" \
- " underlyingSource.cancel(reason);\n" \
+ " var prom = underlyingSource.cancel(reason);\n" \
+ " @markPromiseAsHandled(prom);\n" \
" } catch (e) {\n" \
" }\n" \
"\n" \
@@ -1081,7 +1082,7 @@ const char* const s_readableStreamInternalsAssignToStreamCode =
const JSC::ConstructAbility s_readableStreamInternalsReadStreamIntoSinkCodeConstructAbility = JSC::ConstructAbility::CannotConstruct;
const JSC::ConstructorKind s_readableStreamInternalsReadStreamIntoSinkCodeConstructorKind = JSC::ConstructorKind::None;
const JSC::ImplementationVisibility s_readableStreamInternalsReadStreamIntoSinkCodeImplementationVisibility = JSC::ImplementationVisibility::Public;
-const int s_readableStreamInternalsReadStreamIntoSinkCodeLength = 2795;
+const int s_readableStreamInternalsReadStreamIntoSinkCodeLength = 2868;
static const JSC::Intrinsic s_readableStreamInternalsReadStreamIntoSinkCodeIntrinsic = JSC::NoIntrinsic;
const char* const s_readableStreamInternalsReadStreamIntoSinkCode =
"(async function (stream, sink, isNative) {\n" \
@@ -1101,7 +1102,7 @@ const char* const s_readableStreamInternalsReadStreamIntoSinkCode =
" }\n" \
" var wroteCount = many.value.length;\n" \
" const highWaterMark = @getByIdDirectPrivate(stream, \"highWaterMark\");\n" \
- " if (isNative) @startDirectStream.@call(sink, stream, @undefined, () => !didThrow && stream.cancel());\n" \
+ " if (isNative) @startDirectStream.@call(sink, stream, @undefined, () => !didThrow && @markPromiseAsHandled(stream.cancel()));\n" \
"\n" \
" if (highWaterMark) sink.start({ highWaterMark });\n" \
" \n" \
@@ -1135,7 +1136,8 @@ const char* const s_readableStreamInternalsReadStreamIntoSinkCode =
"\n" \
" try {\n" \
" reader = @undefined;\n" \
- " stream.cancel(e);\n" \
+ " const prom = stream.cancel(e);\n" \
+ " @markPromiseAsHandled(prom);\n" \
" } catch (j) {}\n" \
"\n" \
" if (sink && !didClose) {\n" \