From d8dda96481a9614b5d7550643f794a9831c6b474 Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Tue, 9 Sep 2008 04:39:28 +0200 Subject: Rufe sendReceive() nur auf, wenn poll() f?r eine Verbindung erfolgreich war --- src/Core/ConnectionManager.cpp | 4 +--- src/Net/Listener.cpp | 6 ++++-- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/Core/ConnectionManager.cpp b/src/Core/ConnectionManager.cpp index 2b7c8d1..c7a2f42 100644 --- a/src/Core/ConnectionManager.cpp +++ b/src/Core/ConnectionManager.cpp @@ -92,10 +92,8 @@ void ConnectionManager::handleConnections(std::list& con if((*con)->isConnected()) { std::map::iterator events = pollfdMap.find((*con)->getSocket()); - if(events != pollfdMap.end()) + if(events != pollfdMap.end() && *events->second) (*con)->sendReceive(*events->second); - else - (*con)->sendReceive(); ++con; } diff --git a/src/Net/Listener.cpp b/src/Net/Listener.cpp index 892d057..892ec9d 100644 --- a/src/Net/Listener.cpp +++ b/src/Net/Listener.cpp @@ -107,8 +107,10 @@ ServerConnection* Listener::getConnection(const std::map &poll for(std::list::iterator con = connections.begin(); con != connections.end(); ++con) { std::map::const_iterator events = pollfdMap.find((*con)->getSocket()); - if(events != pollfdMap.end()) - (*con)->sendReceive(*events->second); + if(events != pollfdMap.end()) { + if(*events->second) + (*con)->sendReceive(*events->second); + } else (*con)->sendReceive(); } -- cgit v1.2.3