From 9fdc06d7931df357711a7001755135c371bad42a 2011-08-17 13:04:52 From: Jan Kaluza Date: 2011-08-17 13:04:52 Subject: [PATCH] Fixed rare crash in pingTimeout when backend was disconnect --- diff --git a/src/networkpluginserver.cpp b/src/networkpluginserver.cpp index f3dc2310be025fc9ab01228ed193b4d3fe52d759..7d09db736d4856ebed15574e094fb1970f55655a 100644 --- a/src/networkpluginserver.cpp +++ b/src/networkpluginserver.cpp @@ -664,15 +664,19 @@ void NetworkPluginServer::pingTimeout() { } else { LOG4CXX_INFO(logger, "Disconnecting backend " << (*it) << ". PING response not received."); - (*it)->connection->disconnect(); - (*it)->connection.reset(); + if ((*it)->connection) { + (*it)->connection->disconnect(); + (*it)->connection.reset(); + } // handleSessionFinished((*it)); } if ((*it)->users.size() == 0) { LOG4CXX_INFO(logger, "Disconnecting backend " << (*it) << ". There are no users."); -// (*it)->connection->disconnect(); - (*it)->connection.reset(); + if ((*it)->connection) { + (*it)->connection->disconnect(); + (*it)->connection.reset(); + } } } m_pingTimer->start();