summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/calendarview.cpp15
-rw-r--r--libkcal/event.cpp1
2 files changed, 12 insertions, 4 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp
index 94cc97d..ce41fbd 100644
--- a/korganizer/calendarview.cpp
+++ b/korganizer/calendarview.cpp
@@ -1015,3 +1015,3 @@ bool CalendarView::synchronizeCalendar( Calendar* local, Calendar* remote, int
skipIncidence = true;
-
+ QString idS;
qApp->processEvents();
@@ -1028,3 +1028,6 @@ bool CalendarView::synchronizeCalendar( Calendar* local, Calendar* remote, int
if ( take == 1 ) {// take local
- inL->setCsum( mCurrentSyncDevice, inR->getCsum(mCurrentSyncDevice) );
+ if ( mGlobalSyncMode == SYNC_MODE_EXTERNAL )
+ inL->setCsum( mCurrentSyncDevice, inR->getCsum(mCurrentSyncDevice) );
+ else
+ idS = inR->IDStr();
remote->deleteIncidence( inR );
@@ -1034,2 +1037,4 @@ bool CalendarView::synchronizeCalendar( Calendar* local, Calendar* remote, int
inR->setTempSyncStat( SYNC_TEMPSTATE_INITIAL );
+ if ( mGlobalSyncMode != SYNC_MODE_EXTERNAL )
+ inR->setIDStr( idS );
remote->addIncidence( inR );
@@ -1039,4 +1044,7 @@ bool CalendarView::synchronizeCalendar( Calendar* local, Calendar* remote, int
inR->setRevision( maxrev );
+ idS = inL->IDStr();
local->deleteIncidence( inL );
- local->addIncidence( inR->clone() );
+ inL = inR->clone();
+ inL->setIDStr( idS );
+ local->addIncidence( inL );
++changedLocal;
@@ -1102,2 +1110,3 @@ bool CalendarView::synchronizeCalendar( Calendar* local, Calendar* remote, int
if ( !inL->getID(mCurrentSyncDevice).isEmpty() && mode != 4 ) {
+ checkExternSyncEvent(eventLSyncSharp, inL);
local->deleteIncidence( inL );
diff --git a/libkcal/event.cpp b/libkcal/event.cpp
index dd67252..dfa265b 100644
--- a/libkcal/event.cpp
+++ b/libkcal/event.cpp
@@ -46,3 +46,2 @@ Incidence *Event::clone()
{
- kdDebug(5800) << "Event::clone()" << endl;
return new Event(*this);