<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.kde.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugs.kde.org/"
          
          maintainer="sysadmin@kde.org"
>

    <bug>
          <bug_id>523046</bug_id>
          
          <creation_ts>2026-07-14 12:53:16 +0000</creation_ts>
          <short_desc>plasmashell crashes (SIGABRT) in PlasmaTheme::syncWindow() during QObject::connect, triggered by Akonadi calendar removal cascading through digital-clock delegate rebuild</short_desc>
          <delta_ts>2026-07-14 17:49:11 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Plasma</classification>
          <product>plasmashell</product>
          <component>Digital Clock widget</component>
          <version>6.7.2</version>
          <rep_platform>Fedora RPMs</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>UNCONFIRMED</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.kde.org/show_bug.cgi?id=511028</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>efficiency-and-performance</keywords>
          <priority>NOR</priority>
          <bug_severity>crash</bug_severity>
          <target_milestone>1.0</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Erik Fehér">feher.erik</reporter>
          <assigned_to name="Plasma Bugs List">plasma-bugs-null</assigned_to>
          <cc>kdedev</cc>
          
          <cf_commitlink></cf_commitlink>
          <cf_versionfixedin></cf_versionfixedin>
          <cf_sentryurl></cf_sentryurl>
          <votes>0</votes>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2531608</commentid>
    <comment_count>0</comment_count>
    <who name="Erik Fehér">feher.erik</who>
    <bug_when>2026-07-14 12:53:16 +0000</bug_when>
    <thetext>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&apos;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&apos;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&apos;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.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2531643</commentid>
    <comment_count>1</comment_count>
    <who name="TraceyC">kdedev</who>
    <bug_when>2026-07-14 16:04:57 +0000</bug_when>
    <thetext>Thanks for the bug report, and the detailed analysis. That&apos;s very helpful.

The backtrace looks a lot like bug 511028, which fixed a similar crash in 6.7.0.
I&apos;m not able to reproduce this with Plasma built from git-master by changing a calendar&apos;s properties in KOrganizer or deleting an event while the Digital Clock widget is open

I&apos;ll leave this open so others can try to reproduce</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2531673</commentid>
    <comment_count>2</comment_count>
    <who name="Erik Fehér">feher.erik</who>
    <bug_when>2026-07-14 17:49:11 +0000</bug_when>
    <thetext>(In reply to TraceyC from comment #1)
&gt; Thanks for the bug report, and the detailed analysis. That&apos;s very helpful.
&gt; 
&gt; The backtrace looks a lot like bug 511028, which fixed a similar crash in
&gt; 6.7.0.
&gt; I&apos;m not able to reproduce this with Plasma built from git-master by changing
&gt; a calendar&apos;s properties in KOrganizer or deleting an event while the Digital
&gt; Clock widget is open
&gt; 
&gt; I&apos;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&apos;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&apos;m unable to attach a standard GDB backtrace. The trace above comes from eu-stack plus systemd-coredump&apos;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&apos;s a symptom of the same underlying config/plugin state issue.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>