From 563735e432fc267f851d0f232d8a1a89fab31da4 Mon Sep 17 00:00:00 2001 From: Basilisk-Dev Date: Sat, 9 May 2026 11:24:10 -0400 Subject: [PATCH] Do not wait for transferred readable cancel --- js/src/builtin/Stream.cpp | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/js/src/builtin/Stream.cpp b/js/src/builtin/Stream.cpp index 6103cb79c1..cf2c0f016d 100644 --- a/js/src/builtin/Stream.cpp +++ b/js/src/builtin/Stream.cpp @@ -7065,16 +7065,19 @@ js::InitStreamExtras(JSContext* cx, HandleObject global) function cancelReadableTransfer(record, reason) { record.canceled = true; - var cancelPromise = Promise.resolve().then(function() { - var clonedReason = cloneTransferReasonValue(reason); + var clonedReason; + try { + clonedReason = cloneTransferReasonValue(reason); + } catch (e) { + return Promise.reject(e); + } + + Promise.resolve().then(function() { try { - return record.reader.cancel(clonedReason); - } catch (e) { - return Promise.reject(e); - } + silenceRejection(record.reader.cancel(clonedReason)); + } catch (e) {} }); - silenceRejection(cancelPromise); - return cancelPromise; + return undefined; } function closeReadableTransferPort(port) {