summaryrefslogtreecommitdiffabout
path: root/libkdepim/ksyncmanager.cpp
Unidiff
Diffstat (limited to 'libkdepim/ksyncmanager.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--libkdepim/ksyncmanager.cpp27
1 files changed, 18 insertions, 9 deletions
diff --git a/libkdepim/ksyncmanager.cpp b/libkdepim/ksyncmanager.cpp
index 719d80b..61a9899 100644
--- a/libkdepim/ksyncmanager.cpp
+++ b/libkdepim/ksyncmanager.cpp
@@ -323,7 +323,7 @@ void KSyncManager::slotSyncMenu( int action )
323 mActiveSyncIP = temp->getRemoteIPAB(); 323 mActiveSyncIP = temp->getRemoteIPAB();
324 } else if ( mTargetApp == KOPI ) { 324 } else if ( mTargetApp == KOPI ) {
325 if ( temp->getIsPiSyncSpec() ) 325 if ( temp->getIsPiSyncSpec() )
326 mSpecificResources = QStringList::split( ":", temp->getResSpecKopi() ); 326 mSpecificResources = QStringList::split( ":", temp->getResSpecKopi(),true );
327 mPassWordPiSync = temp->getRemotePw(); 327 mPassWordPiSync = temp->getRemotePw();
328 mActiveSyncPort = temp->getRemotePort(); 328 mActiveSyncPort = temp->getRemotePort();
329 mActiveSyncIP = temp->getRemoteIP(); 329 mActiveSyncIP = temp->getRemoteIP();
@@ -665,7 +665,7 @@ int KSyncManager::ringSync()
665 mActiveSyncPort = temp->getRemotePortAB(); 665 mActiveSyncPort = temp->getRemotePortAB();
666 mActiveSyncIP = temp->getRemoteIPAB(); 666 mActiveSyncIP = temp->getRemoteIPAB();
667 } else if ( mTargetApp == KOPI ) { 667 } else if ( mTargetApp == KOPI ) {
668 mSpecificResources = QStringList::split( ":", temp->getResSpecKopi() ); 668 mSpecificResources = QStringList::split( ":", temp->getResSpecKopi(),true );
669 mPassWordPiSync = temp->getRemotePw(); 669 mPassWordPiSync = temp->getRemotePw();
670 mActiveSyncPort = temp->getRemotePort(); 670 mActiveSyncPort = temp->getRemotePort();
671 mActiveSyncIP = temp->getRemoteIP(); 671 mActiveSyncIP = temp->getRemoteIP();
@@ -1141,21 +1141,30 @@ void KSyncManager::syncPi()
1141 mCurrentResourceLocal = ""; 1141 mCurrentResourceLocal = "";
1142 mCurrentResourceRemote = ""; 1142 mCurrentResourceRemote = "";
1143 if ( mSpecificResources.count() ) { 1143 if ( mSpecificResources.count() ) {
1144 int lastSyncRes = mSpecificResources.count()/2;
1145 int ccc = mSpecificResources.count()-1;
1146 while ( lastSyncRes > 0 && ccc > 0 && mSpecificResources[ ccc ].isEmpty() ) {
1147 --ccc;
1148 --lastSyncRes;
1149 }
1144 int startLocal = 0; 1150 int startLocal = 0;
1145 int startRemote = mSpecificResources.count()/2; 1151 int startRemote = mSpecificResources.count()/2;
1146 emit multiResourceSyncStart( true ); 1152 emit multiResourceSyncStart( true );
1147 while ( startLocal < mSpecificResources.count()/2 ) { 1153 while ( startLocal < mSpecificResources.count()/2 ) {
1148 if ( startLocal+1 >= mSpecificResources.count()/2 ) 1154 if ( startLocal+1 >= lastSyncRes )
1149 emit multiResourceSyncStart( false ); 1155 emit multiResourceSyncStart( false );
1150 mPisyncFinished = false; 1156 mPisyncFinished = false;
1151 mCurrentResourceLocal = mSpecificResources[ startLocal ]; 1157 mCurrentResourceLocal = mSpecificResources[ startLocal ];
1152 mCurrentResourceRemote = mSpecificResources[ startRemote ]; 1158 mCurrentResourceRemote = mSpecificResources[ startRemote ];
1153 KCommandSocket* commandSocket = new KCommandSocket( mCurrentResourceRemote, mPassWordPiSync, port, mActiveSyncIP, this, mParent->topLevelWidget() ); 1159 if ( !mCurrentResourceRemote.isEmpty() ) {
1154 connect( commandSocket, SIGNAL(commandFinished( KCommandSocket*, int )), this, SLOT(deleteCommandSocket(KCommandSocket*, int)) ); 1160 qDebug ( "KSM: Syncing resources: Local: %s --- Remote: %s ",mCurrentResourceLocal.latin1(), mCurrentResourceRemote.latin1() );
1155 commandSocket->readFile( syncFileName() ); 1161 KCommandSocket* commandSocket = new KCommandSocket( mCurrentResourceRemote, mPassWordPiSync, port, mActiveSyncIP, this, mParent->topLevelWidget() );
1156 while ( !mPisyncFinished ) { 1162 connect( commandSocket, SIGNAL(commandFinished( KCommandSocket*, int )), this, SLOT(deleteCommandSocket(KCommandSocket*, int)) );
1157 //qDebug("waiting "); 1163 commandSocket->readFile( syncFileName() );
1158 qApp->processEvents(); 1164 while ( !mPisyncFinished ) {
1165 //qDebug("waiting ");
1166 qApp->processEvents();
1167 }
1159 } 1168 }
1160 ++startLocal; 1169 ++startLocal;
1161 } 1170 }