summaryrefslogtreecommitdiff
path: root/lib/internal/child_process.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/internal/child_process.js')
-rw-r--r--lib/internal/child_process.js5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/internal/child_process.js b/lib/internal/child_process.js
index a2478ec69d..ddb7e58d7c 100644
--- a/lib/internal/child_process.js
+++ b/lib/internal/child_process.js
@@ -26,6 +26,7 @@ const {
WriteWrap,
kReadBytesOrError,
kArrayBufferOffset,
+ kLastWriteWasAsync,
streamBaseState
} = internalBinding('stream_wrap');
const { Pipe, constants: PipeConstants } = internalBinding('pipe_wrap');
@@ -716,10 +717,10 @@ function setupChannel(target, channel) {
}
var req = new WriteWrap();
- req.async = false;
var string = JSON.stringify(message) + '\n';
var err = channel.writeUtf8String(req, string, handle);
+ var wasAsyncWrite = streamBaseState[kLastWriteWasAsync];
if (err === 0) {
if (handle) {
@@ -729,7 +730,7 @@ function setupChannel(target, channel) {
obj.postSend(message, handle, options, callback, target);
}
- if (req.async) {
+ if (wasAsyncWrite) {
req.oncomplete = function() {
control.unref();
if (typeof callback === 'function')