diff --git a/misc/winsock.c b/misc/winsock.c
index 75f4d33b2b7c06879da1d1c9213d49e2fb9d9897..5d9a5198174f9cb0877e103654db4f18377b517d 100644
--- a/misc/winsock.c
+++ b/misc/winsock.c
@@ -1037,7 +1037,7 @@ INT WINAPI WINSOCK_getpeername(SOCKET s, struct sockaddr *name,
 #endif
 	    return 0; 
 	}
-	SetLastError((h_errno < 0) ? wsaErrno() : wsaHerrno());
+	SetLastError(wsaErrno());
     }
 #ifdef HAVE_IPX
     if (name && ((struct ws_sockaddr_ipx *)name)->sipx_family == AF_IPX) {
@@ -1103,7 +1103,7 @@ INT WINAPI WINSOCK_getsockname(SOCKET s, struct sockaddr *name,
 #endif
 	    return 0; 
 	}
-	SetLastError((h_errno < 0) ? wsaErrno() : wsaHerrno());
+	SetLastError(wsaErrno());
     }
 #ifdef HAVE_IPX
     if (name && ((struct ws_sockaddr_ipx *)name)->sipx_family == AF_IPX) {