--- a/QTfrontend/net/tcpBase.cpp Mon Aug 27 17:40:16 2012 +0200
+++ b/QTfrontend/net/tcpBase.cpp Sun Sep 16 16:54:51 2012 +0200
@@ -31,6 +31,8 @@
TCPBase::~TCPBase()
{
+ if (IPCSocket)
+ IPCSocket->deleteLater();
}
TCPBase::TCPBase(bool demoMode) :
@@ -65,6 +67,9 @@
connect(IPCSocket, SIGNAL(disconnected()), this, SLOT(ClientDisconnect()));
connect(IPCSocket, SIGNAL(readyRead()), this, SLOT(ClientRead()));
SendToClientFirst();
+
+ if(srvsList.size()==1) srvsList.pop_front();
+ emit isReadyNow();
}
void TCPBase::RealStart()
@@ -88,9 +93,13 @@
disconnect(IPCSocket, SIGNAL(readyRead()), this, SLOT(ClientRead()));
onClientDisconnect();
- if(srvsList.size()==1) srvsList.pop_front();
- emit isReadyNow();
+ /* if(srvsList.size()==1) srvsList.pop_front();
+ emit isReadyNow();*/
IPCSocket->deleteLater();
+
+ // make sure this object is not in the server list anymore
+ srvsList.removeOne(this);
+
deleteLater();
}