Git commit e28ddf321d48e6bfd51b379cdec9a01112d159ed by Sergio Martins. Committed on 31/10/2013 at 22:08. Pushed by smartins into branch 'master'. Merge branch 'KDE/4.11' Conflicts: akonadi/calendar/incidencechanger.cpp akonadi/calendar/tests/itiphandlertest.cpp M +28 -19 akonadi/calendar/incidencechanger.cpp http://commits.kde.org/kdepimlibs/e28ddf321d48e6bfd51b379cdec9a01112d159ed diff --cc akonadi/calendar/incidencechanger.cpp index 01980a9,47d1f05..7d3ae9c --- a/akonadi/calendar/incidencechanger.cpp +++ b/akonadi/calendar/incidencechanger.cpp @@@ -557,25 -568,34 +557,34 @@@ bool IncidenceChanger::Private::handleI break; case IncidenceChanger::ChangeTypeModify: { - if ( !change->originalItems.isEmpty() ) { - Q_ASSERT( change->originalItems.count() =3D=3D 1 ); - Incidence::Ptr oldIncidence =3D CalendarUtils::incidence( chang= e->originalItems.first() ); - Incidence::Ptr newIncidence =3D CalendarUtils::incidence( chang= e->newItem ); - if ( newIncidence->supportsGroupwareCommunication() ) { - if ( !neverSend && !alwaysSend && mInvitationStatusByAtomicOp= eration.contains( change->atomicOperationId ) ) { - handler.setDefaultAction( actionFromStatus( mInvitationStat= usByAtomicOperation.value( change->atomicOperationId ) ) ); - } - const bool attendeeStatusChanged =3D myAttendeeStatusChanged(= newIncidence, - o= ldIncidence, - A= konadi::CalendarUtils::allEmails() ); - ITIPHandlerHelper::SendResult status =3D handler.sendIncidenc= eModifiedMessage( KCalCore::iTIPRequest, - = newIncidence, - = attendeeStatusChanged ); - = - if ( change->atomicOperationId !=3D 0 ) { - mInvitationStatusByAtomicOperation.insert( change->atomicOp= erationId, status ); - } - } + if ( change->originalItems.isEmpty() ) { + break; + } + = + Q_ASSERT( change->originalItems.count() =3D=3D 1 ); + Incidence::Ptr oldIncidence =3D CalendarUtils::incidence( change-= >originalItems.first() ); + Incidence::Ptr newIncidence =3D CalendarUtils::incidence( change-= >newItem ); + = + if ( !newIncidence->supportsGroupwareCommunication() || + !Akonadi::CalendarUtils::thatIsMe( newIncidence->organizer()= ->email() ) ) { + // If we're not the organizer, the user already saw the "Do you= really want to do this, incidence will become out of sync" + break; + } + = - if ( mInvitationStatusByAtomicOperation.contains( change->atomicO= perationId ) ) { ++ if ( !neverSend && !alwaysSend && mInvitationStatusByAtomicOperat= ion.contains( change->atomicOperationId ) ) { + handler.setDefaultAction( actionFromStatus( mInvitationStatusBy= AtomicOperation.value( change->atomicOperationId ) ) ); + } + = + const bool attendeeStatusChanged =3D myAttendeeStatusChanged( new= Incidence, + oldIn= cidence, + Akona= di::CalendarUtils::allEmails() ); + = + ITIPHandlerHelper::SendResult status =3D handler.sendIncidenceMod= ifiedMessage( KCalCore::iTIPRequest, + = newIncidence, + = attendeeStatusChanged ); + = + if ( change->atomicOperationId !=3D 0 ) { + mInvitationStatusByAtomicOperation.insert( change->atomicOperat= ionId, status ); } } break;