diff options
Diffstat (limited to 'deps/v8/src/d8-posix.cc')
-rw-r--r-- | deps/v8/src/d8-posix.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/deps/v8/src/d8-posix.cc b/deps/v8/src/d8-posix.cc index c2dc5311a..3a091f93c 100644 --- a/deps/v8/src/d8-posix.cc +++ b/deps/v8/src/d8-posix.cc @@ -280,7 +280,10 @@ static void ExecSubprocess(int* exec_error_fds, // Only get here if the exec failed. Write errno to the parent to tell // them it went wrong. If it went well the pipe is closed. int err = errno; - write(exec_error_fds[kWriteFD], &err, sizeof(err)); + int bytes_written; + do { + bytes_written = write(exec_error_fds[kWriteFD], &err, sizeof(err)); + } while (bytes_written == -1 && errno == EINTR); // Return (and exit child process). } |