See if this helps. diff --git a/server/eventloop.cpp b/server/eventloop.cpp index df07a77..32d56d5 100644 --- a/server/eventloop.cpp +++ b/server/eventloop.cpp@@ -426,6 +426,7 @@ void EventLoop::dispatch( Connection * c, bool r, bool w, uint now )
dummy2 = sizeof(dummy1);
if ( ::getsockopt( c->fd(), SOL_SOCKET, SO_RCVBUF,
&dummy1, &dummy2 ) < 0 ) {
+ c->close();
removeConnection( c );
return;
}