diff --git a/lib/internal/worker.js b/lib/internal/worker.js index 88580893cdc015..ef6cc0102fadc4 100644 --- a/lib/internal/worker.js +++ b/lib/internal/worker.js @@ -343,12 +343,22 @@ class Worker extends EventEmitter { case messageTypes.STDIO_PAYLOAD: { const { stream, chunk, encoding } = message; - return this[kParentSideStdio][stream].push(chunk, encoding); + if (this[kParentSideStdio]) { + this[kParentSideStdio][stream].push(chunk, encoding); + } else { + debug(`[${threadId}] explicitly closes stdout for ${this.threadId}`); + } + return; } case messageTypes.STDIO_WANTS_MORE_DATA: { const { stream } = message; - return this[kParentSideStdio][stream][kStdioWantsMoreDataCallback](); + if (this[kParentSideStdio]) { + this[kParentSideStdio][stream][kStdioWantsMoreDataCallback](); + } else { + debug(`[${threadId}] explicitly closes stdout for ${this.threadId}`); + } + return; } }