projects
/
NeonServV5.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge remote-tracking branch 'IoMultiplexer.git/master' into development
[NeonServV5.git]
/
src
/
IOEngine_select.c
diff --git
a/src/IOEngine_select.c
b/src/IOEngine_select.c
index 74e8431dfccca8a75041483d3fc5808d0a585911..2d85d7cc10f0f3b7e7f6bdf597573a3a47e39ea1 100644
(file)
--- a/
src/IOEngine_select.c
+++ b/
src/IOEngine_select.c
@@
-15,12
+15,12
@@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "IOEngine.h"
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "IOEngine.h"
+#include <errno.h>
#ifdef WIN32
#define _WIN32_WINNT 0x501
#include <windows.h>
#include <winsock2.h>
#else
#ifdef WIN32
#define _WIN32_WINNT 0x501
#include <windows.h>
#include <winsock2.h>
#else
-#include <errno.h>
#include <string.h>
#include <stdio.h>
#endif
#include <string.h>
#include <stdio.h>
#endif
@@
-99,6
+99,8
@@
static void engine_select_loop(struct timeval *timeout) {
#endif
}
else if(iofd->type == IOTYPE_SERVER || iofd->type == IOTYPE_CLIENT) {
#endif
}
else if(iofd->type == IOTYPE_SERVER || iofd->type == IOTYPE_CLIENT) {
+ if(iofd->state == IO_CLOSED)
+ continue;
if(iofd->fd > fds_size)
fds_size = iofd->fd;
FD_SET(iofd->fd, &read_fds);
if(iofd->fd > fds_size)
fds_size = iofd->fd;
FD_SET(iofd->fd, &read_fds);