diff --git a/src/xpdev/multisock.c b/src/xpdev/multisock.c index 7bcde30651c5d1219b8672ab6f88e3b9a1e0c401..5f0a3e84e03cb4c77850f80455e0e6d7ef950141 100644 --- a/src/xpdev/multisock.c +++ b/src/xpdev/multisock.c @@ -206,7 +206,6 @@ SOCKET xpms_accept(struct xpms_set *xpms_set, union xp_sockaddr * addr, socklen_t * addrlen, unsigned int timeout, void **cb_data) { fd_set read_fs; - fd_set except_fs; int i; struct timeval tv; struct timeval *tvp; @@ -217,7 +216,6 @@ SOCKET xpms_accept(struct xpms_set *xpms_set, union xp_sockaddr * addr, if(xpms_set->socks[i].sock == INVALID_SOCKET) continue; FD_SET(xpms_set->socks[i].sock, &read_fs); - FD_SET(xpms_set->socks[i].sock, &except_fs); if(xpms_set->socks[i].sock > max_sock) max_sock=xpms_set->socks[i].sock+1; } @@ -229,7 +227,7 @@ SOCKET xpms_accept(struct xpms_set *xpms_set, union xp_sockaddr * addr, tv.tv_usec=(timeout%1000)*1000; tvp=&tv; } - switch(select(max_sock, &read_fs, NULL, &except_fs, tvp)) { + switch(select(max_sock, &read_fs, NULL, NULL, tvp)) { case 0: return INVALID_SOCKET; case -1: @@ -243,10 +241,6 @@ SOCKET xpms_accept(struct xpms_set *xpms_set, union xp_sockaddr * addr, *cb_data=xpms_set->socks[i].cb_data; return accept(xpms_set->socks[i].sock, &addr->addr, addrlen); } - if(FD_ISSET(xpms_set->socks[i].sock, &except_fs)) { - closesocket(xpms_set->socks[i].sock); - xpms_set->socks[i].sock = INVALID_SOCKET; - } } }