From f07b08c1545a018aa81e6e173f87aa9542247e6d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Sergi=20Hern=C3=A0ndez=20Juan?= <shernand@iri.upc.edu>
Date: Wed, 18 Jul 2012 10:28:35 +0000
Subject: [PATCH] Solved a problem when the socket client was remotelly closed.
 The corresponding event was active even after calling the close() function.

---
 src/sockets/socket.cpp | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/sockets/socket.cpp b/src/sockets/socket.cpp
index e7d9731..686a233 100644
--- a/src/sockets/socket.cpp
+++ b/src/sockets/socket.cpp
@@ -172,6 +172,8 @@ void CSocket::hard_close(void)
     if(::close(this->socket_fd)<0)
       throw CSocketException(_HERE_,"Error while closing the socket",this->comm_id);
     this->socket_fd=-1;
+    if(this->event_server->event_is_set(this->connection_closed_event))
+      this->event_server->reset_event(this->connection_closed_event);
   }
   this->cloned=false;
 }
-- 
GitLab