diff -r bb7671829935 -r 66bc20d089fc QTfrontend/net/tcpBase.cpp --- a/QTfrontend/net/tcpBase.cpp Mon Nov 19 23:43:45 2012 +0400 +++ b/QTfrontend/net/tcpBase.cpp Tue Nov 20 00:10:12 2012 +0400 @@ -38,7 +38,8 @@ IPCSocket->deleteLater(); } -TCPBase::TCPBase(bool demoMode) : +TCPBase::TCPBase(bool demoMode, QObject *parent) : + QObject(parent), m_hasStarted(false), m_isDemoMode(demoMode), IPCSocket(0) @@ -144,9 +145,12 @@ } else { - if(couldCancelPreviousRequest && srvsList.last()->couldBeRemoved()) + TCPBase * last = srvsList.last(); + if(couldCancelPreviousRequest + && last->couldBeRemoved() + && (last->parent() == parent())) { - TCPBase * last = srvsList.takeLast(); + srvsList.removeLast(); last->deleteLater(); Start(couldCancelPreviousRequest); } else