X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9bf10d6bd3df0d5ad9d9849f162b17a62c3ac51f..a5777624e2da453751b3c13355843f7e29e843fe:/src/msw/gsocket.c diff --git a/src/msw/gsocket.c b/src/msw/gsocket.c index fca515b420..66dc5acfc6 100644 --- a/src/msw/gsocket.c +++ b/src/msw/gsocket.c @@ -46,7 +46,11 @@ #include #include +/* if we use configure for MSW SOCKLEN_T will be already defined */ +#ifndef SOCKLEN_T #define SOCKLEN_T int +#endif + #define CLASSNAME "_GSocket_Internal_Window_Class" #define WINDOWNAME "_GSocket_Internal_Window_Name" @@ -768,7 +772,7 @@ GSocketEventFlags GSocket_Select(GSocket *socket, GSocketEventFlags flags) { assert(socket != NULL); - return (flags & socket->m_detected); + return flags & socket->m_detected; } /* Attributes */ @@ -1030,17 +1034,14 @@ GSocketError _GSocket_Connect_Timeout(GSocket *socket) fd_set writefds; fd_set exceptfds; - if (!socket->m_non_blocking) + FD_ZERO(&writefds); + FD_ZERO(&exceptfds); + FD_SET(socket->m_fd, &writefds); + FD_SET(socket->m_fd, &exceptfds); + if (select(0, NULL, &writefds, &exceptfds, &socket->m_timeout) == 0) { - FD_ZERO(&writefds); - FD_ZERO(&exceptfds); - FD_SET(socket->m_fd, &writefds); - FD_SET(socket->m_fd, &exceptfds); - if (select(0, NULL, &writefds, &exceptfds, &socket->m_timeout) == 0) - { - socket->m_error = GSOCK_TIMEDOUT; - return GSOCK_TIMEDOUT; - } + socket->m_error = GSOCK_TIMEDOUT; + return GSOCK_TIMEDOUT; } if (!FD_ISSET(socket->m_fd, &writefds)) {