From 176864f35c8adb0ccff8b8fd720d53f9e4f9841d Mon Sep 17 00:00:00 2001 From: Quinten Date: Wed, 22 Oct 2025 15:36:26 +0200 Subject: [PATCH] fix(client): remove sockets on client destruct --- webserv/client/Client.cpp | 6 +++++- webserv/client/Client.hpp | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/webserv/client/Client.cpp b/webserv/client/Client.cpp index ab7c54a..9cef293 100644 --- a/webserv/client/Client.cpp +++ b/webserv/client/Client.cpp @@ -35,7 +35,11 @@ Client::~Client() { Log::trace(LOCATION); Log::info("Client disconnected, fd: " + std::to_string(clientSocket_->getFd())); - server_.remove(*clientSocket_); + for (auto it : sockets_) + { + server_.remove(*(it.second)); + } + // server_.remove(*clientSocket_); }; ASocket &Client::getSocket(int fd) const diff --git a/webserv/client/Client.hpp b/webserv/client/Client.hpp index 432b906..e1528b7 100644 --- a/webserv/client/Client.hpp +++ b/webserv/client/Client.hpp @@ -59,8 +59,8 @@ class Client std::unique_ptr httpResponse_; std::unique_ptr router_; std::unique_ptr clientSocket_; - std::unordered_map sockets_; std::unique_ptr handler_ = nullptr; + std::unordered_map sockets_; Server &server_; void writeToCgi();