diff options
Diffstat (limited to 'ext/websocket/02_websocketstream.js')
-rw-r--r-- | ext/websocket/02_websocketstream.js | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/ext/websocket/02_websocketstream.js b/ext/websocket/02_websocketstream.js index 246ddb1e3..dba22d557 100644 --- a/ext/websocket/02_websocketstream.js +++ b/ext/websocket/02_websocketstream.js @@ -125,10 +125,7 @@ if (options.signal?.aborted) { core.close(cancelRid); - const err = new DOMException( - "This operation was aborted", - "AbortError", - ); + const err = options.signal.reason; this[_connection].reject(err); this[_closed].reject(err); } else { @@ -313,7 +310,12 @@ } }, (err) => { - core.tryClose(cancelRid); + if (err instanceof core.Interrupted) { + // The signal was aborted. + err = options.signal.reason; + } else { + core.tryClose(cancelRid); + } this[_connection].reject(err); this[_closed].reject(err); }, |