Jacek Caban : wininet: Use sock_get_error in a few more places.
Alexandre Julliard
julliard at wine.codeweavers.com
Thu Feb 12 10:13:40 CST 2015
Module: wine
Branch: master
Commit: c815baf8995f3a44940d5bec9777377a88162c4c
URL: http://source.winehq.org/git/wine.git/?a=commit;h=c815baf8995f3a44940d5bec9777377a88162c4c
Author: Jacek Caban <jacek at codeweavers.com>
Date: Wed Feb 11 19:37:51 2015 +0100
wininet: Use sock_get_error in a few more places.
---
dlls/wininet/netconnection.c | 19 ++++++++++++-------
1 file changed, 12 insertions(+), 7 deletions(-)
diff --git a/dlls/wininet/netconnection.c b/dlls/wininet/netconnection.c
index 7695e14..6747a81 100644
--- a/dlls/wininet/netconnection.c
+++ b/dlls/wininet/netconnection.c
@@ -62,12 +62,14 @@
#ifdef HAVE_NETINET_TCP_H
# include <netinet/tcp.h>
#endif
+#if !defined(__MINGW32__) && !defined(_MSC_VER)
+#include <errno.h>
+#endif
#include <stdarg.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
-#include <errno.h>
#include <assert.h>
#include "wine/library.h"
@@ -456,6 +458,9 @@ int sock_get_error(void)
case EFAULT: return WSAEFAULT;
case EINVAL: return WSAEINVAL;
case EMFILE: return WSAEMFILE;
+#if EAGAIN != EWOULDBLOCK
+ case EAGAIN:
+#endif
case EWOULDBLOCK: return WSAEWOULDBLOCK;
case EINPROGRESS: return WSAEINPROGRESS;
case EALREADY: return WSAEALREADY;
@@ -516,7 +521,7 @@ int sock_send(int fd, const void *msg, size_t len, int flags)
{
ret = send(fd, msg, len, flags);
}
- while(ret == -1 && errno == EINTR);
+ while(ret == -1 && sock_get_error() == WSAEINTR);
return ret;
}
@@ -527,7 +532,7 @@ int sock_recv(int fd, void *msg, size_t len, int flags)
{
ret = recv(fd, msg, len, flags);
}
- while(ret == -1 && errno == EINTR);
+ while(ret == -1 && sock_get_error() == WSAEINTR);
return ret;
}
@@ -824,7 +829,7 @@ static BOOL read_ssl_chunk(netconn_t *conn, void *buf, SIZE_T buf_size, blocking
size = sock_recv(conn->socket, conn->ssl_buf+buf_len, ssl_buf_size-buf_len, tmp_mode == BLOCKING_ALLOW ? 0 : WINE_MSG_DONTWAIT);
if(size < 0) {
if(!buf_len) {
- if(errno == EAGAIN || errno == EWOULDBLOCK) {
+ if(sock_get_error() == WSAEWOULDBLOCK) {
TRACE("would block\n");
return WSAEWOULDBLOCK;
}
@@ -864,7 +869,7 @@ static BOOL read_ssl_chunk(netconn_t *conn, void *buf, SIZE_T buf_size, blocking
set_socket_blocking(conn->socket, mode);
size = sock_recv(conn->socket, conn->ssl_buf+buf_len, ssl_buf_size-buf_len, mode == BLOCKING_ALLOW ? 0 : WINE_MSG_DONTWAIT);
if(size < 1) {
- if(size < 0 && (errno == EAGAIN || errno == EWOULDBLOCK)) {
+ if(size < 0 && sock_get_error() == WSAEWOULDBLOCK) {
TRACE("would block\n");
/* FIXME: Optimize extra_buf usage. */
@@ -1035,7 +1040,7 @@ BOOL NETCON_is_alive(netconn_t *netconn)
BYTE b;
len = sock_recv(netconn->socket, &b, 1, MSG_PEEK|MSG_DONTWAIT);
- return len == 1 || (len == -1 && errno == EWOULDBLOCK);
+ return len == 1 || (len == -1 && sock_get_error() == WSAEWOULDBLOCK);
#elif defined(__MINGW32__) || defined(_MSC_VER)
ULONG mode;
int len;
@@ -1051,7 +1056,7 @@ BOOL NETCON_is_alive(netconn_t *netconn)
if(!ioctlsocket(netconn->socket, FIONBIO, &mode))
return FALSE;
- return len == 1 || (len == -1 && errno == WSAEWOULDBLOCK);
+ return len == 1 || (len == -1 && sock_get_error() == WSAEWOULDBLOCK);
#else
FIXME("not supported on this platform\n");
return TRUE;
More information about the wine-cvs
mailing list