diff --git a/server/src/server_connection.cpp b/server/src/server_connection.cpp index e9d822d..d7c7595 100644 --- a/server/src/server_connection.cpp +++ b/server/src/server_connection.cpp @@ -170,12 +170,12 @@ namespace pine if (std::this_thread::get_id() == listen_thread.get_id()) co_await switch_thread(listen_thread); + this->socket.close(); + std::scoped_lock lock(connection_mutex); std::cout << "[Server] Closing connection: " << std::dec << id << std::endl; - this->socket.close(); - server_ref.disconnect_client(id); std::cout << "[Server] Connection closed: " << std::dec << id << std::endl;