mirror of
https://github.com/nodejs/node.git
synced 2026-11-09 15:11:11 -05:00
pipeTo defers each slow-path write to a microtask so it does not run synchronously during enqueue(). A race allows the pipe to shut down and release its writer after the write is scheduled but before it runs. The deferred write then hits an ERR_INTERNAL_ASSERTION because writer[[stream]] is undefined. Skip the deferred write when shutdown has already started. Fixes: https://github.com/nodejs/node/issues/63732 Signed-off-by: Qingyu Wang <wangqingyu.c0l1n@bytedance.com> Assisted-by: Codex PR-URL: https://github.com/nodejs/node/pull/63733 Reviewed-By: Matteo Collina <matteo.collina@gmail.com>