--- a/src/Network/Reactor.cc Fri Jan 16 21:24:45 2009 +0200
+++ b/src/Network/Reactor.cc Fri Jan 16 22:03:49 2009 +0200
@@ -10,7 +10,7 @@
void NetworkReactor::poll (timeval *timeout) {
int ret;
- // start counting the maximum fd from -1, so that select is given nfds=0 if our list is empty
+ // start counting the maximum fd from 0, select will be given nfds=1 if empty
int fd_max = 0;
// zero our fdsets
@@ -25,7 +25,7 @@
// ask socket what events it wants
NetworkPollMask mask = socket->get_poll();
- // set read/write
+ // ignore if nothing
if (mask) {
// socket file descriptor...
int fd = socket->get_socket();
@@ -40,11 +40,11 @@
// read...
if (mask & POLL_READ)
- FD_SET(socket->get_socket(), &read);
+ FD_SET(fd, &read);
// write...
if (mask & POLL_WRITE)
- FD_SET(socket->get_socket(), &write);
+ FD_SET(fd, &write);
}
}