Index: os/connection.c =================================================================== --- os/connection.c.orig +++ os/connection.c @@ -1009,7 +1009,7 @@ CheckConnections(void) do { r = Select (curclient + 1, &tmask, NULL, NULL, ¬ime); } while (r < 0 && (errno == EINTR || errno == EAGAIN)); - if (r < 0) + if (r < 0 && (errno == EBADF)) if (ConnectionTranslation[curclient] > 0) CloseDownClient(clients[ConnectionTranslation[curclient]]); mask &= ~((fd_mask)1 << curoff);