diff options
-rw-r--r-- | erts/emulator/sys/unix/erl_child_setup.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/erts/emulator/sys/unix/erl_child_setup.c b/erts/emulator/sys/unix/erl_child_setup.c index 129861ebd5..f3662f94c6 100644 --- a/erts/emulator/sys/unix/erl_child_setup.c +++ b/erts/emulator/sys/unix/erl_child_setup.c @@ -491,7 +491,12 @@ main(int argc, char *argv[]) ErtsSysForkerProto proto; errno = 0; if ((res = sys_uds_read(uds_fd, (char*)&proto, sizeof(proto), +#if defined(MSG_DONTWAIT) pipes, 3, MSG_DONTWAIT)) < 0) { +#else + /* XXX: a workaround here? */ + pipes, 3, 0)) < 0) { +#endif if (errno == EINTR) continue; DEBUG_PRINT("erl_child_setup failed to read from uds: %d, %d", res, errno); |