summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--main/php_network.h4
-rw-r--r--main/streams/xp_socket.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/main/php_network.h b/main/php_network.h
index 02e2b8ef6b..9f552f352b 100644
--- a/main/php_network.h
+++ b/main/php_network.h
@@ -40,6 +40,10 @@
# define ftruncate(a, b) chsize(a, b)
#endif /* defined(PHP_WIN32) */
+#ifndef EWOULDBLOCK
+# define EWOULDBLOCK EAGAIN
+#endif
+
#ifdef PHP_WIN32
#define php_socket_errno() WSAGetLastError()
#else
diff --git a/main/streams/xp_socket.c b/main/streams/xp_socket.c
index 04a59426c3..deafb9106c 100644
--- a/main/streams/xp_socket.c
+++ b/main/streams/xp_socket.c
@@ -281,7 +281,7 @@ static int php_sockop_set_option(php_stream *stream, int option, int value, void
if (sock->socket == -1) {
alive = 0;
} else if (php_pollfd_for(sock->socket, PHP_POLLREADABLE|POLLPRI, &tv) > 0) {
- if (0 == recv(sock->socket, &buf, sizeof(buf), MSG_PEEK) && php_socket_errno() != EAGAIN) {
+ if (0 == recv(sock->socket, &buf, sizeof(buf), MSG_PEEK) && php_socket_errno() != EWOULDBLOCK) {
alive = 0;
}
}