diff --git a/src/lib/server/Server.cpp b/src/lib/server/Server.cpp index 42367af4..f8b944f8 100644 --- a/src/lib/server/Server.cpp +++ b/src/lib/server/Server.cpp @@ -1375,7 +1375,10 @@ Server::handleClientCloseTimeout(const Event&, void* vclient) BaseClientProxy* client = reinterpret_cast(vclient); LOG((CLOG_NOTE "forced disconnection of client \"%s\"", getName(client).c_str())); removeOldClient(client); + PacketStreamFilter* streamFileter = dynamic_cast(client->getStream()); + TCPSocket* socket = dynamic_cast(streamFileter->getStream()); delete client; + m_clientListener->deleteSocket(socket); } void