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

            Bug ID: 523046
           Summary: plasmashell crashes (SIGABRT) in
                    PlasmaTheme::syncWindow() during QObject::connect,
                    triggered by Akonadi calendar removal cascading
                    through digital-clock delegate rebuild
    Classification: Plasma
           Product: plasmashell
      Version First master
       Reported In:
          Platform: unspecified
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: Digital Clock widget
          Assignee: [email protected]
          Reporter: [email protected]
  Target Milestone: 1.0

Summary:
plasmashell crashes with SIGABRT while constructing a new PlasmaTheme (Kirigami
platform theme) during QObject::connect() inside syncWindow(). The crash is
triggered while an Akonadi calendar item deletion
(AkonadiPimDataSource::onSettingsChanged → EventModel::removeCalendar →
IncidenceChanger::deleteFinished) propagates through
KCalendarCore::Calendar::notifyIncidenceAboutToBeDeleted, causing the
digital-clock applet's QML calendar delegate model to reset and rebuild, which
incubates a new delegate that attaches a Kirigami::Platform::PlatformTheme.

Prior to the crash (starting ~3 minutes earlier), the digital-clock config QML
(configAppearance.qml) and the PIM-events calendar plugin config QML
(PimEventsConfig.qml) logged dozens of SimpleKCM does not have a property
called cfg_* errors — a KCM/config-QML property mismatch that may be a related
or contributing regression.

Versions: Fedora Rawhide (F45), plasma-workspace 6.7.2-2.fc45, libplasma
6.7.2-1.fc45, akonadi-calendar 26.04.3-1.fc45, kf6-kcrash 6.28.0-1.fc45,
Wayland session

Backtrace (crashing thread, main):

KCrash::defaultCrashHandler
QObjectPrivate::connectImpl / QObject::connectImpl
PlasmaTheme::syncWindow() [KirigamiPlasmaStyle.so]
PlasmaTheme::PlasmaTheme(QObject*)
Plugin::createPlatformTheme(QObject*)
Kirigami::Platform::PlatformTheme::qmlAttachedProperties
... [QML delegate incubation chain] ...
QQmlDelegateModelPrivate::emitChanges
QQmlDelegateModel::handleModelReset
DaysModel::onEventRemoved
EventPluginsManager::eventRemoved
CalendarEvents::CalendarEventsPlugin::eventRemoved
PimEventsPlugin::calendarIncidenceAboutToBeDeleted
KCalendarCore::Calendar::notifyIncidenceAboutToBeDeleted
Akonadi::CalendarBasePrivate::internalRemove
Akonadi::CalendarBasePrivate::slotDeleteFinished
Akonadi::IncidenceChanger::deleteFinished
EventModel::removeCalendar
AkonadiPimDataSource::onSettingsChanged

To reproduce (best guess): Have the digital clock's calendar view open with the
PIM Events (Akonadi) calendar plugin enabled, then remove/delete a calendar or
change its settings so Akonadi fires a delete-finished signal while the applet
is active.

Additional observation: plasmashell's memory usage climbed to a 10.8G peak with
an unusually large number of memory mappings (core file had 23,713 program
headers) before the crash — may indicate an unrelated leak worth separate
investigation.

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

Reply via email to