From 4ca0caeecef3075fef179b50ec40777a84f479c7 Mon Sep 17 00:00:00 2001 From: Marcus Eggenberger Date: Sat, 20 Oct 2007 02:03:55 +0000 Subject: [PATCH] Stopped SlaveSynchronizers from requesting a second init after a namechange if they are allready initialized. --- src/common/synchronizer.cpp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/common/synchronizer.cpp b/src/common/synchronizer.cpp index 8c294007..179cda11 100644 --- a/src/common/synchronizer.cpp +++ b/src/common/synchronizer.cpp @@ -122,8 +122,6 @@ void Synchronizer::parentChangedName() { proxy()->detachObject(parent()); proxy()->detachObject(this); attach(); - if(proxy()->proxyType() == SignalProxy::Client && initialized()) - proxy()->detachObject(this); } // ==================== @@ -276,16 +274,18 @@ void Synchronizer::attachAsSlave() { } } - // and then we connect ourself, so we can receive init data - // qDebug() << "attachSlot:" << initSignal() << "recvInitData(QVariantMap)"; - // qDebug() << "attachSignal:" << "requestSync()" << requestSyncSignal(); - proxy()->attachSlot(initSignal().toAscii(), this, SLOT(recvInitData(QVariantMap))); - proxy()->attachSignal(this, SIGNAL(requestSync()), requestSyncSignal().toAscii()); - if(!getMethodByName("setInitialized()").isEmpty()) connect(this, SIGNAL(initDone()), parent(), SLOT(setInitialized())); - emit requestSync(); + if(!initialized()) { + // and then we connect ourself, so we can receive init data + // qDebug() << "attachSlot:" << initSignal() << "recvInitData(QVariantMap)"; + // qDebug() << "attachSignal:" << "requestSync()" << requestSyncSignal(); + proxy()->attachSlot(initSignal().toAscii(), this, SLOT(recvInitData(QVariantMap))); + proxy()->attachSignal(this, SIGNAL(requestSync()), requestSyncSignal().toAscii()); + + emit requestSync(); + } } void Synchronizer::attachAsMaster() { -- 2.20.1