PIPeer important fix!
git-svn-id: svn://db.shs.com.ru/pip@116 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5
This commit is contained in:
@@ -149,6 +149,13 @@ PIPeer::PIPeer(const PIString & name_): PIObject() {
|
||||
|
||||
PIPeer::~PIPeer() {
|
||||
destroyed = true;
|
||||
PIMutexLocker ml(peers_mutex);
|
||||
piForeach (PeerInfo & p, peers)
|
||||
if (p._data) {
|
||||
p._data->dt_in.stop();
|
||||
p._data->dt_out.stop();
|
||||
p._data->t.stop(true);
|
||||
}
|
||||
timer.stop();
|
||||
diag_s.stop();
|
||||
diag_d.stop();
|
||||
@@ -161,6 +168,8 @@ PIPeer::~PIPeer() {
|
||||
sendSelfRemove();
|
||||
destroyMBcasts();
|
||||
eth_send.close();
|
||||
piForeach (PeerInfo & p, peers)
|
||||
p.destroy();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -333,7 +333,7 @@ void _PITimerImp_Pool::Pool::add(_PITimerImp_Pool * t) {
|
||||
void _PITimerImp_Pool::Pool::remove(_PITimerImp_Pool * t) {
|
||||
//piCout << "remove ...";
|
||||
lock();
|
||||
to_remove.removeOne(t);
|
||||
to_remove << t;
|
||||
unlock();
|
||||
//piCout << "remove done";
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user