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

--- Comment #2 from Erik Fehér <[email protected]> ---
(In reply to TraceyC from comment #1)
> Thanks for the bug report, and the detailed analysis. That's very helpful.
> 
> The backtrace looks a lot like bug 511028, which fixed a similar crash in
> 6.7.0.
> I'm not able to reproduce this with Plasma built from git-master by changing
> a calendar's properties in KOrganizer or deleting an event while the Digital
> Clock widget is open
> 
> I'll leave this open so others can try to reproduce

Thanks for looking into this, TraceyC.
I can offer a precise, simple reproduction. My crash was not caused by deleting
a calendar or an event — it happened from a routine settings change:

Right-click Digital Clock → Configure Digital Clock...
Go to Calendar Events
Untick one of the enabled calendars (in my case, a secondary Google calendar
under Calendar Events)
Click Apply

That's it — no dragging, no deleting events, no removing Akonadi resources.
Just unchecking a calendar checkbox and applying.
Backtrace confirms the same PlasmaTheme::syncWindow() → QObject::connect crash
path as 511028, but reached via disabling a calendar plugin rather than
dragging the calendar view:

AkonadiPimDataSource::onSettingsChanged
EventModel::removeCalendar
Akonadi::IncidenceChanger::deleteFinished
Akonadi::CalendarBasePrivate::slotDeleteFinished
Akonadi::CalendarBasePrivate::internalRemove
KCalendarCore::Calendar::notifyIncidenceAboutToBeDeleted
PimEventsPlugin::calendarIncidenceAboutToBeDeleted
CalendarEvents::CalendarEventsPlugin::eventRemoved
EventPluginsManager::eventRemoved
DaysModel::onEventRemoved
QAbstractItemModel::modelReset
QQmlDelegateModel::handleModelReset
... [QML delegate incubation rebuild] ...
Kirigami::Platform::PlatformTheme::qmlAttachedProperties
Plugin::createPlatformTheme
PlasmaTheme::PlasmaTheme
PlasmaTheme::syncWindow
QObject::connectImpl
KCrash::defaultCrashHandler

AkonadiPimDataSource::onSettingsChanged (which fires when the enabled-calendars
config changes) calls EventModel::removeCalendar for the deselected calendar,
and that removal cascades through the same delegate-rebuild path that reaches
syncWindow(). Given the trigger here is simply unchecking a calendar in
settings, this should be trivially reproducible.

Given this reaches syncWindow() via a config-change-driven delegate rebuild
rather than rapid calendar dragging, the 6.7.0 fix for 511028 likely does not
cover this path.

Note: GDB 17.2 on this system crashes when processing the core file (both with
and without debuginfod), so I'm unable to attach a standard GDB backtrace. The
trace above comes from eu-stack plus systemd-coredump's own automated
backtrace, both of which agree. Happy to attach the raw core file or .ini crash
metadata if useful, or file the GDB issue separately.

Separately — unrelated but co-occurring — I saw a wave of SimpleKCM does not
have a property called cfg_* and PimEventsConfig does not have a property
called cfg_* errors in the minutes before the crash, from configAppearance.qml
and PimEventsConfig.qml. Not sure if related, but flagging in case it's a
symptom of the same underlying config/plugin state issue.

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

Reply via email to