https://bugs.kde.org/show_bug.cgi?id=447966
Ferenc Lengyel <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[email protected] --- Comment #2 from Ferenc Lengyel <[email protected]> --- Still present with Merkuro 26.08.1, KCalendarCore 6.30.0 (Arch/CachyOS). Not specific to the DAV resource: reproduced with an Akonadi iCal file resource subscribed to a Google Calendar public .ics feed. Data: a weekly series (RRULE:FREQ=WEEKLY;BYDAY=MO, 16:00) with one exception, RECURRENCE-ID 2026-10-26T16:00 Europe/Budapest, DTSTART 2026-10-13T09:00. Akonadi stores the exception as its own item and it is correct in akonadiconsole. Observed in Merkuro: the moved occurrence is missing on 13 October from the week, work week, 3-day and day views. It appears in the October month view, because that view's range also contains 26 October. Cause: KCalendarCore OccurrenceIterator, setupIterator() in src/occurrenceiterator.cpp: https://invent.kde.org/frameworks/kcalendarcore/-/blob/2ad30ad3a286d90f84bdd963a9ea905701d82de9/src/occurrenceiterator.cpp#L104-162 Incidences with a RECURRENCE-ID are skipped at the top of the loop. Exceptions are added back only while expanding the parent's recurrence->timesInInterval(start, end), matched by RECURRENCE-ID. So an exception is emitted only when its original date is inside the requested range. One moved into the range from outside it is never returned. Merkuro's IncidenceOccurrenceModel uses OccurrenceIterator for all its views, which explains the difference between the month view and the others. Same symptom as bug 328585 (KOrganizer agenda view, closed as unmaintained) and probably bug 507088. Suggested product/component: frameworks-kcalendarcore. Possible fix: after expanding the parent, also check the parent's exceptions (calendar.instances(inc)) that were not matched, and emit the ones whose own DTSTART/DTEND overlaps [start, end]. -- You are receiving this mail because: You are watching all bug changes.
