]> granicus.if.org Git - php/commitdiff
- Added check for EWOULDBLOCK
authorFelipe Pena <felipe@php.net>
Wed, 7 Jan 2009 20:19:17 +0000 (20:19 +0000)
committerFelipe Pena <felipe@php.net>
Wed, 7 Jan 2009 20:19:17 +0000 (20:19 +0000)
- Using EWOULDBLOCK instead of EAGAIN by portability issues
(Related to #46917)

main/php_network.h
main/streams/xp_socket.c

index 02e2b8ef6b4bb7c83dcf2373ffaec00772f7b12d..9f552f352b54e2e54f7ede64b3d1026af3586204 100644 (file)
 #      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
index 172103ec39046420c112aab112c14bb16613718b..57e1b5af9b96746a6dbf0981c4b91997ad425956 100644 (file)
@@ -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;
                                        }
                                }