Bug 506642

Summary: When closing Quick Settings soon after applying a new global theme from there (especially on a slow machine), Plasma Shell crashes in KConfigIniBackend::parseConfig()
Product: [Plasma] plasmashell Reporter: Roke Julian Lockhart Beedell <4wy78uwh>
Component: generic-crashAssignee: Plasma Bugs List <plasma-bugs-null>
Status: CONFIRMED ---    
Severity: crash CC: corroding.worsening266, gbnooooomj, kdedev, nate, postix
Priority: HI Keywords: drkonqi, regression
Version First Reported In: 6.4.1   
Target Milestone: 1.0   
Platform: Fedora RPMs   
OS: Linux   
See Also: https://bugzilla.redhat.com/show_bug.cgi?id=2376516
https://bugzilla.redhat.com/show_bug.cgi?id=2376518
https://bugs.kde.org/show_bug.cgi?id=500565
Latest Commit: Version Fixed In:
Sentry Crash Report: https://crash-reports.kde.org/organizations/kde/issues/133687
Attachments: New crash information added by DrKonqi
Dr. Konqi's KCrash File
bt full on Tumbleed and Plasma 6.4.4

Description Roke Julian Lockhart Beedell 2025-07-05 16:12:26 UTC
Application: plasmashell (6.4.1)

ApplicationNotResponding [ANR]: false
Qt Version: 6.9.1
Frameworks Version: 6.15.0
Operating System: Linux 6.15.4-200.fc42.x86_64 x86_64
Windowing System: Wayland
Distribution: "Fedora Linux 42 (KDE Plasma Desktop Edition)"
DrKonqi: 6.4.1 [CoredumpBackend]

-- Information about the crash:
Per https://bugzilla.redhat.com/show_bug.cgi?id=2376516, at the "Quick Settings" page, [^1] I attempted to switch global theme from `org.kde.breezedark.desktop` to `org.kde.breeze.desktop` (like `lookandfeel --apply` would). Although I *believe* that I hit "Apply", after which the theme changed, *then* the window decoration's closure button. When I did, "Apply Settings" modal window appeared regardless. When I selected "Apply", the window closed, and the theme reverted, for the applications, but didn't for the shell. After 0.75s, the shell crashed and automatically reloaded, whereupon Dr Konqi and GNOME Abrt invoked.

[^1]: https://discuss.kde.org/t/which-kcm-maps-to-quick-settings-does-one/36650?u=rokejulianlockhart

The crash does not seem to be reproducible.

-- Backtrace (Reduced):
#5  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
#6  0x00007fa6566811e3 in __pthread_kill_internal (threadid=<optimized out>, signo=6) at pthread_kill.c:89
#7  0x00007fa656627afe in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#8  0x00007fa65660f6d0 in __GI_abort () at abort.c:73
#9  0x00007fa6566106f3 in __libc_message_impl (fmt=fmt@entry=0x7fa6567c248c "%s\n") at ../sysdeps/posix/libc_fatal.c:134
#10 0x00007fa65668b275 in malloc_printerr (str=str@entry=0x7fa6567c5498 "malloc_consolidate(): unaligned fastbin chunk detected") at malloc.c:5829
#11 0x00007fa65668bf4c in malloc_consolidate (av=av@entry=0x7fa6567f6ac0 <main_arena>) at malloc.c:4903
#12 0x00007fa65668e9b0 in _int_malloc (av=0x7fa6567f6ac0 <main_arena>, bytes=4096) at malloc.c:4099
#13 0x00007fa65668fe6e in __GI___libc_malloc (bytes=4096) at malloc.c:3414
#14 0x00007fa656e41f09 in allocateData (allocSize=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/tools/qarraydata.cpp:139
#15 allocateHelper (objectSize=1, alignment=16, capacity=4078, option=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/tools/qarraydata.cpp:181
#16 allocateHelper (objectSize=1, alignment=16, capacity=<optimized out>, option=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/tools/qarraydata.cpp:157
#17 QArrayData::allocate1 (dptr=dptr@entry=0x7ffca39fc6c0, capacity=<optimized out>, option=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/tools/qarraydata.cpp:211
#18 0x00007fa656dcf7e8 in QTypedArrayData<char>::allocate (capacity=<optimized out>, option=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/tools/qarraydata.h:129
#19 QArrayDataPointer<char>::QArrayDataPointer (this=0x7ffca39fc6c0, alloc=<optimized out>, n=<optimized out>, option=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/tools/qarraydatapointer.h:58
#20 QByteArray::reallocData (this=0x7ffca39fc870, alloc=<optimized out>, option=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/text/qbytearray.cpp:1984


Reported using DrKonqi
Comment 1 Roke Julian Lockhart Beedell 2025-07-05 16:12:27 UTC
Created attachment 182981 [details]
New crash information added by DrKonqi

DrKonqi auto-attaching complete backtrace.
Comment 2 Roke Julian Lockhart Beedell 2025-07-05 16:13:21 UTC
Created attachment 182982 [details]
Dr. Konqi's KCrash File
Comment 3 Roke Julian Lockhart Beedell 2025-07-05 16:35:24 UTC
https://bugzilla.redhat.com/show_bug.cgi?id=2376518 occurred soon enough afterward that I'll add it too.
Comment 4 Roke Julian Lockhart Beedell 2025-07-05 20:43:10 UTC
*** Bug 506652 has been marked as a duplicate of this bug. ***
Comment 5 Roke Julian Lockhart Beedell 2025-07-05 20:43:41 UTC
I should have included my environment:

> ~~~
> Operating System: Fedora Linux 42
> KDE Plasma Version: 6.4.1
> KDE Frameworks Version: 6.15.0
> Qt Version: 6.9.1
> Kernel Version: 6.15.4-200.fc42.x86_64 (64-bit)
> Graphics Platform: Wayland
> Processors: 12 × AMD Ryzen 5 7600X 6-Core Processor
> Memory: 32 GiB of RAM (30.4 GiB usable)
> Graphics Processor 1: AMD Radeon RX 5700
> Graphics Processor 2: AMD Radeon Graphics
> Manufacturer: ASRock
> Product Name: X670E Taichi
> ~~~

...since, per https://bugs.kde.org/show_bug.cgi?id=506652, this also reproduces on my laptop. That issue also explains what I believe to be the cause of this bug, although it's not yet reproducible enough for certainty.
Comment 6 TraceyC 2025-07-09 19:01:37 UTC
Searchable backtrace 

Thread 1 (Thread 0x7fa650d87300 (LWP 2130)):
[KCrash Handler]
#5  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
#6  0x00007fa6566811e3 in __pthread_kill_internal (threadid=<optimized out>, signo=6) at pthread_kill.c:89
#7  0x00007fa656627afe in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#8  0x00007fa65660f6d0 in __GI_abort () at abort.c:73
#9  0x00007fa6566106f3 in __libc_message_impl (fmt=fmt@entry=0x7fa6567c248c "%s\n") at ../sysdeps/posix/libc_fatal.c:134
#10 0x00007fa65668b275 in malloc_printerr (str=str@entry=0x7fa6567c5498 "malloc_consolidate(): unaligned fastbin chunk detected") at malloc.c:5829
#11 0x00007fa65668bf4c in malloc_consolidate (av=av@entry=0x7fa6567f6ac0 <main_arena>) at malloc.c:4903
#12 0x00007fa65668e9b0 in _int_malloc (av=0x7fa6567f6ac0 <main_arena>, bytes=4096) at malloc.c:4099
#13 0x00007fa65668fe6e in __GI___libc_malloc (bytes=4096) at malloc.c:3414
#14 0x00007fa656e41f09 in allocateData (allocSize=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/tools/qarraydata.cpp:139
#15 allocateHelper (objectSize=1, alignment=16, capacity=4078, option=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/tools/qarraydata.cpp:181
#16 allocateHelper (objectSize=1, alignment=16, capacity=<optimized out>, option=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/tools/qarraydata.cpp:157
#17 QArrayData::allocate1 (dptr=dptr@entry=0x7ffca39fc6c0, capacity=<optimized out>, option=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/tools/qarraydata.cpp:211
#18 0x00007fa656dcf7e8 in QTypedArrayData<char>::allocate (capacity=<optimized out>, option=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/tools/qarraydata.h:129
#19 QArrayDataPointer<char>::QArrayDataPointer (this=0x7ffca39fc6c0, alloc=<optimized out>, n=<optimized out>, option=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/tools/qarraydatapointer.h:58
#20 QByteArray::reallocData (this=0x7ffca39fc870, alloc=<optimized out>, option=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/text/qbytearray.cpp:1984
#21 0x00007fa656dcf9cb in QByteArray::resize (this=this@entry=0x7ffca39fc870, size=size@entry=2746) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/text/qbytearray.cpp:1908
#22 0x00007fa656cb8350 in QIODevice::readAll (this=this@entry=0x7ffca39fc810) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/io/qiodevice.cpp:1269
#23 0x00007fa6590747ef in KConfigIniBackend::parseConfig (this=<optimized out>, currentLocale=..., entryMap=..., options=..., merging=false) at /usr/src/debug/kf6-kconfig-6.15.0-1.fc42.x86_64/src/core/kconfigini.cpp:83
#24 0x00007fa65906680b in KConfigIniBackend::parseConfig (this=0x561a7e6c1600, currentLocale=..., entryMap=..., options=...) at /usr/src/debug/kf6-kconfig-6.15.0-1.fc42.x86_64/src/core/kconfigini.cpp:58
#25 KConfigPrivate::parseConfigFiles (this=0x561a7e6c15f0) at /usr/src/debug/kf6-kconfig-6.15.0-1.fc42.x86_64/src/core/kconfig.cpp:806
#26 0x00007fa65907d7e6 in KSharedConfig::KSharedConfig (this=0x561a7b2ea080, fileName=..., flags=..., resType=QStandardPaths::GenericConfigLocation) at /usr/src/debug/kf6-kconfig-6.15.0-1.fc42.x86_64/src/core/ksharedconfig.cpp:179
#27 KSharedConfig::openConfig (_fileName=..., flags=..., flags@entry=..., resType=resType@entry=QStandardPaths::GenericConfigLocation) at /usr/src/debug/kf6-kconfig-6.15.0-1.fc42.x86_64/src/core/ksharedconfig.cpp:145
#28 0x00007fa656beb2eb in KIconTheme::current () at /usr/src/debug/kf6-kiconthemes-6.15.0-1.fc42.x86_64/src/kicontheme.cpp:675
#29 0x00007fa656beba5a in KIconLoaderPrivate::initIconThemes (this=0x561a7a681e00) at /usr/src/debug/kf6-kiconthemes-6.15.0-1.fc42.x86_64/src/kiconloader.cpp:443
#30 0x00007fa656bd3fed in KIconLoaderPrivate::initIconThemes (this=0x561a7a681e00) at /usr/src/debug/kf6-kiconthemes-6.15.0-1.fc42.x86_64/src/kiconloader.cpp:436
#31 KIconLoaderPrivate::init (this=0x561a7a681e00, _appname=..., extraSearchPaths=...) at /usr/src/debug/kf6-kiconthemes-6.15.0-1.fc42.x86_64/src/kiconloader.cpp:420
#32 0x00007fa656be351b in KIconLoader::newIconLoader (this=0x7fa650d87188) at /usr/src/debug/kf6-kiconthemes-6.15.0-1.fc42.x86_64/src/kiconloader.cpp:1498
#33 0x00007fa656bd3c12 in KIconLoaderPrivate::_k_refreshIcons (this=0x561a7a681e00, group=1) at /usr/src/debug/kf6-kiconthemes-6.15.0-1.fc42.x86_64/src/kiconloader.cpp:376
#34 0x00007fa656d657ba in QtPrivate::QSlotObjectBase::call (this=0x561a7a6905b0, r=0x7fa650d87188, a=0x7ffca39fd160) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qobjectdefs_impl.h:461
#35 doActivate<false> (sender=0x7fa656bff4c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, signal_index=3, argv=argv@entry=0x7ffca39fd160) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qobject.cpp:4146
#36 0x00007fa656d5c089 in QMetaObject::activate (sender=sender@entry=0x7fa656bff4c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, m=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffca39fd160) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qobject.cpp:4206
#37 0x00007fa656bdfe77 in QMetaObject::activate<void, int> (sender=0x7fa656bff4c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, mo=<optimized out>, local_signal_index=0, ret=0x0) at /usr/include/qt6/QtCore/qobjectdefs.h:306
#38 KIconLoaderGlobalData::iconChanged (this=0x7fa656bff4c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, _t1=<optimized out>) at /usr/src/debug/kf6-kiconthemes-6.15.0-1.fc42.x86_64/redhat-linux-build/src/KF6IconThemes_autogen/include/kiconloader.moc:118
#39 KIconLoaderGlobalData::qt_static_metacall (_o=0x7fa656bff4c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7ffca39fd2d8) at /usr/src/debug/kf6-kiconthemes-6.15.0-1.fc42.x86_64/redhat-linux-build/src/KF6IconThemes_autogen/include/kiconloader.moc:74
#40 KIconLoaderGlobalData::qt_metacall (this=0x7fa656bff4c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7ffca39fd2d8) at /usr/src/debug/kf6-kiconthemes-6.15.0-1.fc42.x86_64/redhat-linux-build/src/KF6IconThemes_autogen/include/kiconloader.moc:104
#41 0x00007fa6586d7a9e in QDBusConnectionPrivate::deliverCall (this=0x7fa63c001690, object=0x7fa656bff4c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, msg=..., metaTypes=..., slotIdx=4) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/dbus/qdbusintegrator.cpp:1007
#42 0x00007fa656d5662c in QObject::event (this=<optimized out>, e=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qobject.cpp:1431
#43 0x00007fa65923d97f in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x7fa656bff4c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, e=0x7fa63c019320) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/widgets/kernel/qapplication.cpp:3303
#44 0x00007fa656cf9f38 in QCoreApplication::notifyInternal2 (receiver=0x7fa656bff4c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, event=0x7fa63c019320) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qcoreapplication.cpp:1106
#45 0x00007fa656cfa19d in QCoreApplication::sendEvent (receiver=<optimized out>, event=<optimized out>) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qcoreapplication.cpp:1546
#46 0x00007fa656cfdd26 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x561a7a669d40) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qcoreapplication.cpp:1879
#47 0x00007fa65701016f in postEventSourceDispatch (s=0x561a7a671020) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:246
#48 0x00007fa65582e880 in g_main_dispatch (context=0x7fa63c000f00) at ../glib/gmain.c:3398
#49 g_main_context_dispatch_unlocked (context=0x7fa63c000f00) at ../glib/gmain.c:4249
#50 0x00007fa6558377a8 in g_main_context_iterate_unlocked (context=context@entry=0x7fa63c000f00, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4314
#51 0x00007fa655837953 in g_main_context_iteration (context=0x7fa63c000f00, may_block=1) at ../glib/gmain.c:4379
#52 0x00007fa65700f9ad in QEventDispatcherGlib::processEvents (this=0x561a7a671d80, flags=...) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:399
#53 0x00007fa656d07b03 in QEventLoop::exec (this=this@entry=0x7ffca39fd920, flags=..., flags@entry=...) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/global/qflags.h:77
#54 0x00007fa656d03419 in QCoreApplication::exec () at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/kernel/qcoreapplication.cpp:1449
#55 0x00007fa6574ddbad in QGuiApplication::exec () at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/gui/kernel/qguiapplication.cpp:1986
#56 0x00007fa65923d8e9 in QApplication::exec () at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/widgets/kernel/qapplication.cpp:2570
#57 0x0000561a6115e96c in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/plasma-workspace-6.4.1-2.fc42.x86_64/shell/main.cpp:188
Comment 7 TraceyC 2025-07-09 19:04:33 UTC
This backtrace is nearly identical to bug 500565, which we thought was fixed in 6.3.2
Comment 8 Roke Julian Lockhart Beedell 2025-07-09 19:13:26 UTC
(In reply to TraceyC from comment #7)

I believe that I've been unable to reproduce it since, so it might occur solely once per installation. My assumption earlier that decided the current title might not be accurate.
Comment 9 TraceyC 2025-08-01 20:45:03 UTC
*** Bug 507731 has been marked as a duplicate of this bug. ***
Comment 10 Nate Graham 2025-08-07 17:11:51 UTC
This part tells a story:

#22 0x00007fa656cb8350 in QIODevice::readAll (this=this@entry=0x7ffca39fc810) at /usr/src/debug/qt6-qtbase-6.9.1-1.fc42.x86_64/src/corelib/io/qiodevice.cpp:1269
#23 0x00007fa6590747ef in KConfigIniBackend::parseConfig (this=<optimized out>, currentLocale=..., entryMap=..., options=..., merging=false) at /usr/src/debug/kf6-kconfig-6.15.0-1.fc42.x86_64/src/core/kconfigini.cpp:83
#24 0x00007fa65906680b in KConfigIniBackend::parseConfig (this=0x561a7e6c1600, currentLocale=..., entryMap=..., options=...) at /usr/src/debug/kf6-kconfig-6.15.0-1.fc42.x86_64/src/core/kconfigini.cpp:58
#25 KConfigPrivate::parseConfigFiles (this=0x561a7e6c15f0) at /usr/src/debug/kf6-kconfig-6.15.0-1.fc42.x86_64/src/core/kconfig.cpp:806
#26 0x00007fa65907d7e6 in KSharedConfig::KSharedConfig (this=0x561a7b2ea080, fileName=..., flags=..., resType=QStandardPaths::GenericConfigLocation) at /usr/src/debug/kf6-kconfig-6.15.0-1.fc42.x86_64/src/core/ksharedconfig.cpp:179
#27 KSharedConfig::openConfig (_fileName=..., flags=..., flags@entry=..., resType=resType@entry=QStandardPaths::GenericConfigLocation) at /usr/src/debug/kf6-kconfig-6.15.0-1.fc42.x86_64/src/core/ksharedconfig.cpp:145
#28 0x00007fa656beb2eb in KIconTheme::current () at /usr/src/debug/kf6-kiconthemes-6.15.0-1.fc42.x86_64/src/kicontheme.cpp:675
#29 0x00007fa656beba5a in KIconLoaderPrivate::initIconThemes (this=0x561a7a681e00) at /usr/src/debug/kf6-kiconthemes-6.15.0-1.fc42.x86_64/src/kiconloader.cpp:443
#30 0x00007fa656bd3fed in KIconLoaderPrivate::initIconThemes (this=0x561a7a681e00) at /usr/src/debug/kf6-kiconthemes-6.15.0-1.fc42.x86_64/src/kiconloader.cpp:436
#31 KIconLoaderPrivate::init (this=0x561a7a681e00, _appname=..., extraSearchPaths=...) at /usr/src/debug/kf6-kiconthemes-6.15.0-1.fc42.x86_64/src/kiconloader.cpp:420
#32 0x00007fa656be351b in KIconLoader::newIconLoader (this=0x7fa650d87188) at /usr/src/debug/kf6-kiconthemes-6.15.0-1.fc42.x86_64/src/kiconloader.cpp:1498
#33 0x00007fa656bd3c12 in KIconLoaderPrivate::_k_refreshIcons (this=0x561a7a681e00, group=1) at /usr/src/debug/kf6-kiconthemes-6.15.0-1.fc42.x86_64/src/kiconloader.cpp:376

So we're refreshing the icon theme, and we ask for the name of the current icon theme, which goes through KConfig, which looks at an INI-style config file, and tries to parse it, and blows up in Qt code.

Could be a timing issue where the config file gets updated atomically and KConfig tries to read it in the unfortunate moment when it's in a transitional state.
Comment 11 Roke Julian Lockhart Beedell 2025-08-19 12:21:40 UTC
*** Bug 508467 has been marked as a duplicate of this bug. ***
Comment 12 postix 2025-09-10 11:00:29 UTC
I've seen this too on Tumbleweed with Plasma 6.4.4, Frameworks 6.17.0 and Qt 6.9.2, when switching between Breeze and Breeze Dark in Quick Settings:

```
#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1  0x00007f8fccc9de53 in __pthread_kill_internal (threadid=<optimized out>, signo=6) at pthread_kill.c:89
#2  0x00007f8fccc427b6 in __GI_raise (sig=6) at ../sysdeps/posix/raise.c:26
#3  0x00007f8fd0396390 in KCrash::defaultCrashHandler (sig=6) at /usr/src/debug/kcrash-6.17.0/src/kcrash.cpp:605
#4  0x00007f8fccc42910 in <signal handler called> () at /lib64/libc.so.6
#5  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
#6  0x00007f8fccc9de53 in __pthread_kill_internal (threadid=<optimized out>, signo=6) at pthread_kill.c:89
#7  0x00007f8fccc427b6 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#8  0x00007f8fccc2934b in __GI_abort () at abort.c:73
#9  0x00007f8fccc2a3ad in __libc_message_impl (fmt=fmt@entry=0x7f8fccdbe35d "%s\n") at ../sysdeps/posix/libc_fatal.c:138
#10 0x00007f8fccca8b77 in malloc_printerr (str=str@entry=0x7f8fccdc12a8 "malloc_consolidate(): unaligned fastbin chunk detected") at malloc.c:5879
#11 0x00007f8fccca9714 in malloc_consolidate (av=av@entry=0x7f8fccdf7ac0 <main_arena>) at malloc.c:4949
#12 0x00007f8fcccabdab in _int_malloc (av=av@entry=0x7f8fccdf7ac0 <main_arena>, bytes=bytes@entry=8192) at malloc.c:4159
#13 0x00007f8fcccac892 in __libc_malloc2 (bytes=8192) at malloc.c:3443
#14 0x00007f8fcd6ed0c8 in allocateData (allocSize=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/tools/qarraydata.cpp:139
#15 allocateHelper (objectSize=1, alignment=16, capacity=8174, option=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/tools/qarraydata.cpp:178
#16 allocateHelper (objectSize=1, alignment=16, capacity=<optimized out>, option=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/tools/qarraydata.cpp:154
#17 QArrayData::allocate1 (dptr=0x7ffe224984b0, capacity=<optimized out>, option=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/tools/qarraydata.cpp:208
#18 0x00007f8fcd67fd84 in QTypedArrayData<char>::allocate (capacity=140729473664576, option=QArrayData::Grow) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/tools/qarraydata.h:129
#19 QArrayDataPointer<char>::QArrayDataPointer (this=0x7ffe224984b0, alloc=140729473664576, n=<optimized out>, option=QArrayData::Grow) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/tools/qarraydatapointer.h:58
#20 QByteArray::reallocData (this=this@entry=0x7ffe22498640, alloc=alloc@entry=6285, option=option@entry=QArrayData::Grow) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/text/qbytearray.cpp:1993
#21 0x00007f8fcd67ff9a in QByteArray::resize (this=0x7ffe22498640, size=6285) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/text/qbytearray.cpp:1917
#22 0x00007f8fcd591760 in QIODevice::readAll (this=this@entry=0x7ffe224985e0) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/io/qiodevice.cpp:1269
#23 0x00007f8fcf6de273 in KConfigIniBackend::parseConfig (this=<optimized out>, currentLocale=..., entryMap=..., options=..., merging=false) at /usr/src/debug/kconfig-6.17.0/src/core/kconfigini.cpp:83
#24 0x00007f8fcf6cc51f in KConfigIniBackend::parseConfig (this=0x55ee5e81e9a0, currentLocale=..., entryMap=..., options=...) at /usr/src/debug/kconfig-6.17.0/src/core/kconfigini.cpp:58
#25 KConfigPrivate::parseConfigFiles (this=0x55ee5e81e990) at /usr/src/debug/kconfig-6.17.0/src/core/kconfig.cpp:806
#26 0x00007f8fcf6e1de7 in KSharedConfig::KSharedConfig (this=0x55ee5e6caa80, fileName=..., flags=..., resType=QStandardPaths::GenericConfigLocation) at /usr/src/debug/kconfig-6.17.0/src/core/ksharedconfig.cpp:179
#27 KSharedConfig::openConfig (_fileName=..., flags=flags@entry=..., resType=resType@entry=QStandardPaths::GenericConfigLocation) at /usr/src/debug/kconfig-6.17.0/src/core/ksharedconfig.cpp:145
#28 0x00007f8fcd3a8252 in KIconTheme::current () at /usr/src/debug/kiconthemes-6.17.0/src/kicontheme.cpp:675
#29 0x00007f8fcd3a89a9 in KIconLoaderPrivate::initIconThemes (this=0x55ee59d1c890) at /usr/src/debug/kiconthemes-6.17.0/src/kiconloader.cpp:443
#30 0x00007f8fcd3913f3 in KIconLoaderPrivate::initIconThemes (this=0x55ee59d1c890) at /usr/src/debug/kiconthemes-6.17.0/src/kiconloader.cpp:436
#31 KIconLoaderPrivate::init (this=0x55ee59d1c890, _appname=<optimized out>, extraSearchPaths=<optimized out>) at /usr/src/debug/kiconthemes-6.17.0/src/kiconloader.cpp:420
#32 0x00007f8fcd3a06f5 in KIconLoader::newIconLoader (this=0x7f8fc9370408) at /usr/src/debug/kiconthemes-6.17.0/src/kiconloader.cpp:1502
#33 0x00007f8fcd391024 in KIconLoaderPrivate::_k_refreshIcons (this=0x55ee59d1c890, group=4) at /usr/src/debug/kiconthemes-6.17.0/src/kiconloader.cpp:376
#34 0x00007f8fcd6308b4 in QtPrivate::QSlotObjectBase::call (this=0x55ee59d2c370, r=<optimized out>, a=0x7ffe22498ee0, this=<optimized out>, r=<optimized out>, a=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/kernel/qobjectdefs_impl.h:461
#35 doActivate<false> (sender=0x7f8fcd3b24c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, signal_index=3, argv=0x7ffe22498ee0)
    at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/kernel/qobject.cpp:4157
#36 0x00007f8fcd39d01c in QMetaObject::activate<void, int> (sender=0x7f8fcd3b24c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, mo=<optimized out>, local_signal_index=0, ret=0x0)
    at /usr/include/qt6/QtCore/qobjectdefs.h:306
#37 KIconLoaderGlobalData::iconChanged (this=0x7f8fcd3b24c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, _t1=<optimized out>)
    at /usr/src/debug/kiconthemes-6.17.0/build/src/KF6IconThemes_autogen/include/kiconloader.moc:118
#38 KIconLoaderGlobalData::qt_static_metacall (_o=0x7f8fcd3b24c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7ffe22499038)
    at /usr/src/debug/kiconthemes-6.17.0/build/src/KF6IconThemes_autogen/include/kiconloader.moc:74
#39 KIconLoaderGlobalData::qt_metacall (this=0x7f8fcd3b24c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7ffe22499038)
    at /usr/src/debug/kiconthemes-6.17.0/build/src/KF6IconThemes_autogen/include/kiconloader.moc:104
#40 0x00007f8fce662ef7 in QDBusConnectionPrivate::deliverCall
    (this=0x7f8fc40016e0, object=0x7f8fcd3b24c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, msg=..., metaTypes=<optimized out>, slotIdx=4)
    at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/dbus/qdbusintegrator.cpp:1008
#41 0x00007f8fcd61d9d4 in QObject::event (this=<optimized out>, e=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/kernel/qobject.cpp:1432
#42 0x00007f8fcf9e51c8 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x7f8fcd3b24c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, e=0x7f8fc4071030)
    at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/widgets/kernel/qapplication.cpp:3300
#43 0x00007f8fcd5c9138 in QCoreApplication::notifyInternal2 (receiver=0x7f8fcd3b24c0 <_ZZN13QGlobalStaticIN14QtGlobalStatic6HolderIN12_GLOBAL__N_118Q_QGS_s_globalDataEEEE8instanceEvE6holder.lto_priv.0>, event=0x7f8fc4071030)
    at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/kernel/qcoreapplication.cpp:1106
#44 0x00007f8fcd5c917d in QCoreApplication::sendEvent (receiver=<optimized out>, event=<optimized out>) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/kernel/qcoreapplication.cpp:1546
#45 0x00007f8fcd5cb567 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x55ee59cff9a0) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/kernel/qcoreapplication.cpp:1891
#46 0x00007f8fcd87fc17 in postEventSourceDispatch (s=s@entry=0x55ee59d0adc0) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/kernel/qeventdispatcher_glib.cpp:246
#47 0x00007f8fcbf890b6 in g_main_dispatch (context=0x7f8fc4000f70) at ../glib/gmain.c:3398
#48 g_main_context_dispatch_unlocked (context=context@entry=0x7f8fc4000f70) at ../glib/gmain.c:4249
#49 0x00007f8fcbf8aee8 in g_main_context_iterate_unlocked (context=context@entry=0x7f8fc4000f70, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4314
#50 0x00007f8fcbf8b72c in g_main_context_iteration (context=0x7f8fc4000f70, may_block=1) at ../glib/gmain.c:4379
#51 0x00007f8fcd87d868 in QEventDispatcherGlib::processEvents (this=0x55ee59d0b5a0, flags=...) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/kernel/qeventdispatcher_glib.cpp:399
#52 0x00007f8fcd5d6ab3 in QEventLoop::exec (this=0x7ffe22499600, flags=...) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/global/qflags.h:77
#53 0x00007f8fcd5cda63 in QCoreApplication::exec () at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/kernel/qcoreapplication.cpp:1449
#54 0x00007f8fcde21250 in QGuiApplication::exec () at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/gui/kernel/qguiapplication.cpp:1986
#55 0x00007f8fcf9dff29 in QApplication::exec () at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/widgets/kernel/qapplication.cpp:2567
#56 0x000055ee1dddc275 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/plasma-workspace-6.4.4/shell/main.cpp:188
```
Comment 13 postix 2025-09-10 11:06:23 UTC
bt full  tells me, this bug is about plasmashellrc for me:

```
#20 QByteArray::reallocData (this=this@entry=0x7ffe22498640, alloc=alloc@entry=6285, option=option@entry=QArrayData::Grow) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/text/qbytearray.cpp:1993
        dd = {d = 0xfefefefefefefefe, ptr = 0x7ffe224985e0 "\340f\246͏\177", size = 30}
        cannotUseReallocate = <optimized out>
#21 0x00007f8fcd67ff9a in QByteArray::resize (this=0x7ffe22498640, size=6285) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/text/qbytearray.cpp:1917
        capacityAtEnd = <optimized out>
#22 0x00007f8fcd591760 in QIODevice::readAll (this=this@entry=0x7ffe224985e0) at /usr/src/debug/qtbase-everywhere-src-6.9.2/src/corelib/io/qiodevice.cpp:1269
        d = 0x55ee5f1fbce0
        result = {d = {d = 0x0, ptr = 0x0, size = 0}, static _empty = 0 '\000'}
        readBytes = 6285
#23 0x00007f8fcf6de273 in KConfigIniBackend::parseConfig (this=<optimized out>, currentLocale=..., entryMap=..., options=..., merging=false) at /usr/src/debug/kconfig-6.17.0/src/core/kconfigini.cpp:83
        next_line = <optimized out>
        file = {<QFileDevice> = {<QIODevice> = {<QObject> = {_vptr.QObject = 0x7f8fcda666e0 <vtable for QFile+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f8fcd8d1630 <_ZN7QObject32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QObjectE_tEEE.lto_priv.0+272>, data = 0x7f8fcd8d1520 <_ZN7QObject32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QObjectE_tEEE.lto_priv.0>, static_metacall = 0x7f8fcd62cff0 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7f8fcda659a0 <_ZN7QObject36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_125qt_meta_tag_ZN7QObjectE_tEEE.lto_priv.0>, extradata = 0x0}}, d_ptr = {d = 0x55ee5f1fbce0}}, <QIODeviceBase> = {<No data fields>}, static staticMetaObject = {d = {superdata = {direct = 0x55ee1de8e580 <QObject::staticMetaObject>}, stringdata = 0x7f8fcd8d1224 <_ZN9QIODevice32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_127qt_meta_tag_ZN9QIODeviceE_tEEE.lto_priv.0+260>, data = 0x7f8fcd8d1120 <_ZN9QIODevice32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_127qt_meta_tag_ZN9QIODeviceE_tEEE.lto_priv.0>, static_metacall = 0x7f8fcd58f930 <QIODevice::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7f8fcda657c0 <_ZN9QIODevice36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_127qt_meta_tag_ZN9QIODeviceE_tEEE.lto_priv.0>, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7f8fcda65820 <QIODevice::staticMetaObject>}, stringdata = 0x7f8fcd8cc99c <_ZN11QFileDevice32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_130qt_meta_tag_ZN11QFileDeviceE_tEEE.lto_priv.0+60>, data = 0x7f8fcd8cc960 <_ZN11QFileDevice32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_130qt_meta_tag_ZN11QFileDeviceE_tEEE.lto_priv.0>, static_metacall = 0x7f8fcd575ec0 <QFileDevice::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7f8fcda5fd58 <_ZN11QFileDevice36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_130qt_meta_tag_ZN11QFileDeviceE_tEEE.lto_priv.0>, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7f8fcda64160 <QFileDevice::staticMetaObject>}, stringdata = 0x7f8fcd8cb81c <_ZN5QFile32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_123qt_meta_tag_ZN5QFileE_tEEE.lto_priv.0+60>, data = 0x7f8fcd8cb7e0 <_ZN5QFile32qt_staticMetaObjectStaticContentIN12_GLOBAL__N_123qt_meta_tag_ZN5QFileE_tEEE.lto_priv.0>, static_metacall = 0x7f8fcd575e30 <QFile::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, metaTypes = 0x7f8fcda5fb98 <_ZN5QFile36qt_staticMetaObjectRelocatingContentIN12_GLOBAL__N_123qt_meta_tag_ZN5QFileE_tEEE.lto_priv.0>, extradata = 0x0}}}
        immutableGroups = {<QListSpecialMethods<QString>> = {<QListSpecialMethodsBase<QString>> = {<No data fields>}, <No data fields>}, d = {d = 0x0, ptr = 0x0, size = 0}}
        fileOptionImmutable = false
        groupOptionImmutable = false
        groupSkip = false
        lineNo = 0
        buffer = {d = {d = 0x0, ptr = 0x0, size = 0}, static _empty = 0 '\000'}
        contents = {m_size = <optimized out>, m_data = <optimized out>}
        langIdx = <optimized out>
        currentLanguage = {d = {d = 0x7f8fc40685b0, ptr = 0x7f8fcd5810e2 <QFileInfo::~QFileInfo()+274> "H\203\304\030H\211߾\350\001", size = 140255445813096}, static _empty = 0 '\000'}
        currentGroup = {d = {d = 0x55ee5f53a968, ptr = 0x7f8fcd59cbac <QResourceFileEngine::~QResourceFileEngine()+28> u"譈⑼븈\020", size = 140729473664624}, static _empty = 0 u'\000'}
        bDefault = <optimized out>
        allowExecutableValues = <optimized out>
        cache = {d = 0x55ee5fb5b8a0}
#24 0x00007f8fcf6cc51f in KConfigIniBackend::parseConfig (this=0x55ee5e81e9a0, currentLocale=..., entryMap=..., options=...) at /usr/src/debug/kconfig-6.17.0/src/core/kconfigini.cpp:58
#25 KConfigPrivate::parseConfigFiles (this=0x55ee5e81e990) at /usr/src/debug/kconfig-6.17.0/src/core/kconfig.cpp:806
        file = @0x55ee5f53a950: {d = {d = 0x55ee5fb10950, ptr = 0x55ee5fb10960 u"/home/mh/.config/plasmashellrc", size = 30}, static _empty = 0 u'\000'}
        files = {<QListSpecialMethods<QString>> = {<QListSpecialMethodsBase<QString>> = {<No data fields>}, <No data fields>}, d = {d = 0x55ee5f53a940, ptr = 0x55ee5f53a950, size = 1}}
        utf8Locale = {d = {d = 0x55ee5f6b7080, ptr = 0x55ee5f6b7090 "de_DE", size = 5}, static _empty = 0 '\000'}
#26 0x00007f8fcf6e1de7 in KSharedConfig::KSharedConfig (this=0x55ee5e6caa80, fileName=..., flags=..., resType=QStandardPaths::GenericConfigLocation) at /usr/src/debug/kconfig-6.17.0/src/core/ksharedconfig.cpp:179
#27 KSharedConfig::openConfig (_fileName=..., flags=flags@entry=..., resType=resType@entry=QStandardPaths::GenericConfigLocation) at /usr/src/debug/kconfig-6.17.0/src/core/ksharedconfig.cpp:145
        fileName = {d = {d = 0x55ee5e6ba440, ptr = 0x55ee5e6ba450 u"plasmashellrc", size = 13}, static _empty = 0 u'\000'}
        global = <optimized out>
        ptr = {d = {ptr = <optimized out>}}
        userWarned = true
```
Comment 14 postix 2025-09-10 11:17:53 UTC
Created attachment 184861 [details]
bt full on Tumbleed and Plasma 6.4.4

Here's the full backtrace attached now.
Comment 15 TraceyC 2025-09-11 09:44:01 UTC
I was able to trigger the "Apply" popup dialog after switching themes, but plasmashell did not crash on Neon Testing with Plasma 6.4.4
Given that this is likely a timing issue that doesn't prove much. I'll mark this confirmed since more than one person reproduced
Comment 16 Nate Graham 2025-10-08 15:53:54 UTC
*** Bug 502856 has been marked as a duplicate of this bug. ***
Comment 17 Nate Graham 2025-10-08 15:54:50 UTC
*** Bug 500565 has been marked as a duplicate of this bug. ***
Comment 18 Nate Graham 2025-10-08 15:56:29 UTC
This is currently the #10 crash on Sentry; raising priority.