Index: runtime/bin/eventhandler_macos.h |
diff --git a/runtime/bin/eventhandler_macos.h b/runtime/bin/eventhandler_macos.h |
index 70a103c87ee0297b79df5115e08d80213150cf3e..18e463b77d88f2d23f2a5e61265b40cbd4ea0b1c 100644 |
--- a/runtime/bin/eventhandler_macos.h |
+++ b/runtime/bin/eventhandler_macos.h |
@@ -9,11 +9,13 @@ |
#error Do not include eventhandler_macos.h directly; use eventhandler.h instead. |
#endif |
-#include <unistd.h> |
+#include <errno.h> |
#include <sys/event.h> // NOLINT |
#include <sys/socket.h> |
+#include <unistd.h> |
#include "platform/hashmap.h" |
+#include "platform/signal_blocker.h" |
namespace dart { |
@@ -44,7 +46,7 @@ class SocketData { |
void Close() { |
port_ = 0; |
mask_ = 0; |
- close(fd_); |
+ VOID_TEMP_FAILURE_RETRY(close(fd_)); |
fd_ = -1; |
} |