From 16be9af3fcd23fa8590692cbe84af20cfe6a60b2 Mon Sep 17 00:00:00 2001 From: Florent Le Coz Date: Wed, 19 Feb 2014 23:59:43 +0100 Subject: Send unavailable presence to all muc when the IRC server closes the connection --- src/network/poller.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/network/poller.cpp') diff --git a/src/network/poller.cpp b/src/network/poller.cpp index 75e7e6a..010dd58 100644 --- a/src/network/poller.cpp +++ b/src/network/poller.cpp @@ -155,13 +155,15 @@ int Poller::poll(const std::chrono::milliseconds& timeout) else if (this->fds[i].revents & POLLIN) { auto socket_handler = this->socket_handlers.at(this->fds[i].fd); - socket_handler->on_recv(); + if (socket_handler->is_connected()) + socket_handler->on_recv(); nb_events--; } else if (this->fds[i].revents & POLLOUT) { auto socket_handler = this->socket_handlers.at(this->fds[i].fd); - socket_handler->on_send(); + if (socket_handler->is_connected()) + socket_handler->on_send(); nb_events--; } } -- cgit v1.2.3