summaryrefslogtreecommitdiffabout
path: root/korganizer
Unidiff
Diffstat (limited to 'korganizer') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/calendarview.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp
index d5d31e2..258bd43 100644
--- a/korganizer/calendarview.cpp
+++ b/korganizer/calendarview.cpp
@@ -1239,51 +1239,53 @@ void CalendarView::syncExternal( int mode )
1239 sharpFormat = new SharpFormat () ; 1239 sharpFormat = new SharpFormat () ;
1240 loadSuccess = sharpFormat->load( calendar, mCalendar ); 1240 loadSuccess = sharpFormat->load( calendar, mCalendar );
1241 1241
1242 } else 1242 } else
1243#endif 1243#endif
1244 if ( mode == 1 ) { // phone 1244 if ( mode == 1 ) { // phone
1245 phoneFormat = new PhoneFormat (mCurrentSyncDevice, 1245 phoneFormat = new PhoneFormat (mCurrentSyncDevice,
1246 KOPrefs::instance()->mPhoneDevice, 1246 KOPrefs::instance()->mPhoneDevice,
1247 KOPrefs::instance()->mPhoneConnection, 1247 KOPrefs::instance()->mPhoneConnection,
1248 KOPrefs::instance()->mPhoneModel); 1248 KOPrefs::instance()->mPhoneModel);
1249 loadSuccess = phoneFormat->load( calendar,mCalendar); 1249 loadSuccess = phoneFormat->load( calendar,mCalendar);
1250 1250
1251 } else 1251 } else
1252 return; 1252 return;
1253 if ( loadSuccess ) { 1253 if ( loadSuccess ) {
1254 getEventViewerDialog()->setSyncMode( true ); 1254 getEventViewerDialog()->setSyncMode( true );
1255 syncOK = synchronizeCalendar( mCalendar, calendar, KOPrefs::instance()->mSyncAlgoPrefs ); 1255 syncOK = synchronizeCalendar( mCalendar, calendar, KOPrefs::instance()->mSyncAlgoPrefs );
1256 getEventViewerDialog()->setSyncMode( false ); 1256 getEventViewerDialog()->setSyncMode( false );
1257 qApp->processEvents(); 1257 qApp->processEvents();
1258 if ( syncOK ) { 1258 if ( syncOK ) {
1259 if ( KOPrefs::instance()->mWriteBackFile ) 1259 if ( KOPrefs::instance()->mWriteBackFile )
1260 { 1260 {
1261 QPtrList<Incidence> iL = mCalendar->rawIncidences(); 1261 QPtrList<Incidence> iL = mCalendar->rawIncidences();
1262 Incidence* inc = iL.first(); 1262 Incidence* inc = iL.first();
1263 while ( inc ) { 1263 if ( phoneFormat ) {
1264 inc->removeID(mCurrentSyncDevice); 1264 while ( inc ) {
1265 inc = iL.next(); 1265 inc->removeID(mCurrentSyncDevice);
1266 inc = iL.next();
1267 }
1266 } 1268 }
1267#ifndef DESKTOP_VERSION 1269#ifndef DESKTOP_VERSION
1268 if ( sharpFormat ) 1270 if ( sharpFormat )
1269 sharpFormat->save(calendar); 1271 sharpFormat->save(calendar);
1270#endif 1272#endif
1271 if ( phoneFormat ) 1273 if ( phoneFormat )
1272 phoneFormat->save(calendar); 1274 phoneFormat->save(calendar);
1273 iL = calendar->rawIncidences(); 1275 iL = calendar->rawIncidences();
1274 inc = iL.first(); 1276 inc = iL.first();
1275 Incidence* loc; 1277 Incidence* loc;
1276 while ( inc ) { 1278 while ( inc ) {
1277 if ( inc->tempSyncStat() == SYNC_TEMPSTATE_NEW_ID ) { 1279 if ( inc->tempSyncStat() == SYNC_TEMPSTATE_NEW_ID ) {
1278 loc = mCalendar->incidence(inc->uid() ); 1280 loc = mCalendar->incidence(inc->uid() );
1279 if ( loc ) { 1281 if ( loc ) {
1280 loc->setID(mCurrentSyncDevice, inc->getID(mCurrentSyncDevice) ); 1282 loc->setID(mCurrentSyncDevice, inc->getID(mCurrentSyncDevice) );
1281 loc->setCsum( mCurrentSyncDevice, inc->getCsum(mCurrentSyncDevice) ); 1283 loc->setCsum( mCurrentSyncDevice, inc->getCsum(mCurrentSyncDevice) );
1282 } 1284 }
1283 } 1285 }
1284 inc = iL.next(); 1286 inc = iL.next();
1285 } 1287 }
1286 Incidence* lse = getLastSyncEvent(); 1288 Incidence* lse = getLastSyncEvent();
1287 if ( lse ) { 1289 if ( lse ) {
1288 lse->setReadOnly( false ); 1290 lse->setReadOnly( false );
1289 lse->setDescription( "" ); 1291 lse->setDescription( "" );