diff options
Diffstat (limited to 'ext/node/polyfills/internal_binding/pipe_wrap.ts')
-rw-r--r-- | ext/node/polyfills/internal_binding/pipe_wrap.ts | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/ext/node/polyfills/internal_binding/pipe_wrap.ts b/ext/node/polyfills/internal_binding/pipe_wrap.ts index a657f7018..f5c3c5439 100644 --- a/ext/node/polyfills/internal_binding/pipe_wrap.ts +++ b/ext/node/polyfills/internal_binding/pipe_wrap.ts @@ -37,7 +37,10 @@ import { import { LibuvStreamWrap } from "ext:deno_node/internal_binding/stream_wrap.ts"; import { codeMap } from "ext:deno_node/internal_binding/uv.ts"; import { delay } from "ext:deno_node/_util/async.ts"; -import { kStreamBaseField } from "ext:deno_node/internal_binding/stream_wrap.ts"; +import { + kStreamBaseField, + StreamBase, +} from "ext:deno_node/internal_binding/stream_wrap.ts"; import { ceilPowOf2, INITIAL_ACCEPT_BACKOFF_DELAY, @@ -68,7 +71,7 @@ export class Pipe extends ConnectionWrap { #closed = false; #acceptBackoffDelay?: number; - constructor(type: number, conn?: Deno.UnixConn) { + constructor(type: number, conn?: Deno.UnixConn | StreamBase) { let provider: providerType; let ipc: boolean; @@ -100,8 +103,8 @@ export class Pipe extends ConnectionWrap { this.ipc = ipc; - if (conn && provider === providerType.PIPEWRAP) { - const localAddr = conn.localAddr as Deno.UnixAddr; + if (conn && provider === providerType.PIPEWRAP && "localAddr" in conn) { + const localAddr = conn.localAddr; this.#address = localAddr.path; } } |