https://bugs.kde.org/show_bug.cgi?id=464328

--- Comment #4 from [email protected] <[email protected]> ---
Still present in Plasma 6.7.5 with kdepim-addons 26.08.1 (Fedora 44), with
events synced from Google Calendar through the Akonadi Google resource.

With Google you don't need to move an occurrence to hit this. Google stores a
RECURRENCE-ID exception whenever a single occurrence is edited, even if only
the description or the guest list changes, so many exceptions keep the original
time. The clock then shows two identical entries in the same slot. When the
occurrence was moved, it shows a ghost entry at the original slot plus the
moved one. Bug 468456 describes the same thing with Google; it was closed as
WORKSFORME only because the reporter had switched clients.

I checked the Akonadi data for a weekly meeting where this happens. The master
item (RRULE:FREQ=WEEKLY) and the exception items share the same UID, and each
exception's RECURRENCE-ID matches one of the master's occurrences, so the data
is correct.

The cause is in kdepim-addons,
plugins/plasma/pimeventsplugin/eventdatavisitor.cpp:
BaseEventDataVisitor::explodeIncidenceOccurences() expands the master with
recurrence()->getNextDateTime() and never checks for exceptions, while
EventDataVisitor::visit() also adds each exception as a standalone event.

There is an open merge request that fixes exactly this, but it isn't linked to
this bug yet: https://invent.kde.org/pim/kdepim-addons/-/merge_requests/123
("pimevents: do not duplicate recurring events with edited occurrences").

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to