diff --git a/library/RemoteServer.cpp b/library/RemoteServer.cpp index 77510d63a..7f40bead4 100644 --- a/library/RemoteServer.cpp +++ b/library/RemoteServer.cpp @@ -476,11 +476,14 @@ void ServerMainImpl::threadFn(std::promise promise, int port) CActiveSocket *client = nullptr; try { - while ((client = server.socket.Accept()) != NULL) + while (server.socket.IsSocketValid()) { - BlockGuard lock; - ServerConnection::Accepted(client); - client = nullptr; + if ((client = server.socket.Accept()) != NULL) + { + BlockGuard lock; + ServerConnection::Accepted(client); + client = nullptr; + } } } catch(BlockedException &) { if (client)