@@ -58,14 +58,11 @@ const {
58
58
} = require ( 'internal/util' ) ;
59
59
60
60
const {
61
+ validateAbortSignal,
61
62
validateBuffer,
62
63
validateObject,
63
64
} = require ( 'internal/validators' ) ;
64
65
65
- const {
66
- kAborted,
67
- } = require ( 'internal/abort_controller' ) ;
68
-
69
66
const {
70
67
MessageChannel,
71
68
} = require ( 'internal/worker/io' ) ;
@@ -381,8 +378,9 @@ class ReadableStream {
381
378
const preventClose = options ?. preventClose ;
382
379
const signal = options ?. signal ;
383
380
384
- if ( signal !== undefined && signal ?. [ kAborted ] === undefined )
385
- throw new ERR_INVALID_ARG_TYPE ( 'options.signal' , 'AbortSignal' , signal ) ;
381
+ if ( signal !== undefined ) {
382
+ validateAbortSignal ( signal , 'options.signal' ) ;
383
+ }
386
384
387
385
if ( isReadableStreamLocked ( this ) )
388
386
throw new ERR_INVALID_STATE . TypeError ( 'The ReadableStream is locked' ) ;
@@ -422,8 +420,9 @@ class ReadableStream {
422
420
const preventClose = options ?. preventClose ;
423
421
const signal = options ?. signal ;
424
422
425
- if ( signal !== undefined && signal ?. [ kAborted ] === undefined )
426
- throw new ERR_INVALID_ARG_TYPE ( 'options.signal' , 'AbortSignal' , signal ) ;
423
+ if ( signal !== undefined ) {
424
+ validateAbortSignal ( signal , 'options.signal' ) ;
425
+ }
427
426
428
427
if ( isReadableStreamLocked ( this ) )
429
428
throw new ERR_INVALID_STATE . TypeError ( 'The ReadableStream is locked' ) ;
@@ -1269,12 +1268,12 @@ function readableStreamPipeTo(
1269
1268
1270
1269
let shuttingDown = false ;
1271
1270
1272
- if ( signal !== undefined && signal ?. [ kAborted ] === undefined ) {
1273
- return PromiseReject (
1274
- new ERR_INVALID_ARG_TYPE (
1275
- 'options.signal' ,
1276
- 'AbortSignal' ,
1277
- signal ) ) ;
1271
+ if ( signal !== undefined ) {
1272
+ try {
1273
+ validateAbortSignal ( signal , 'options.signal' ) ;
1274
+ } catch ( error ) {
1275
+ return PromiseReject ( error ) ;
1276
+ }
1278
1277
}
1279
1278
1280
1279
const promise = createDeferredPromise ( ) ;
0 commit comments