| Summary: | Disabling some applets (plasmoids) crashes plasmashell | ||
|---|---|---|---|
| Product: | [Plasma] plasmashell | Reporter: | Mike <noeerover> |
| Component: | System Tray widget | Assignee: | Plasma Bugs List <plasma-bugs-null> |
| Status: | RESOLVED FIXED | ||
| Severity: | crash | CC: | kdedev, materka, nate, niccolo |
| Priority: | NOR | Keywords: | regression |
| Version First Reported In: | master | ||
| Target Milestone: | 1.0 | ||
| Platform: | openSUSE | ||
| OS: | Linux | ||
| Latest Commit: | https://invent.kde.org/plasma/plasma-workspace/-/commit/20255a4c54891c349d322a2e992c136e041b9c22 | Version Fixed/Implemented In: | 6.3.0 |
| Sentry Crash Report: | |||
| Attachments: | plasmashell kcrash | ||
|
Description
Mike
2024-10-02 22:59:18 UTC
Backtrace
Thread 1 (Thread 0x71eac25eca40 (LWP 4037)):
[KCrash Handler]
#5 0x000071eac78b1a3c in _int_free (av=0x71eac79f6ac0 <main_arena>, p=p@entry=0x584093c9d5e0, have_lock=have_lock@entry=0) at malloc.c:4499
#6 0x000071eac78b45ce in __GI___libc_free (mem=0x584093c9d5f0) at malloc.c:3398
#7 0x000071eaca15ba26 in QArrayDataPointer<char>::~QArrayDataPointer (this=0x584091068068, __in_chrg=<optimized out>) at /usr/include/qt6/QtCore/qarraydatapointer.h:110
#8 0x000071eaca157e1a in QByteArray::~QByteArray (this=0x584091068068, __in_chrg=<optimized out>) at /usr/include/qt6/QtCore/qbytearray.h:580
#9 0x000071eaca15ac6c in KEntry::~KEntry (this=0x584091068068, __in_chrg=<optimized out>) at /home/natalie/kde/src/kconfig/src/core/kconfigdata_p.h:22
#10 0x000071eaca16fda4 in std::pair<KEntryKey const, KEntry>::~pair (this=0x584091068030, __in_chrg=<optimized out>) at /usr/include/c++/14.2.1/bits/stl_pair.h:284
#11 0x000071eaca16fdcb in std::destroy_at<std::pair<KEntryKey const, KEntry> > (__location=0x584091068030) at /usr/include/c++/14.2.1/bits/stl_construct.h:88
#12 0x000071eaca16883c in std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<KEntryKey const, KEntry> > > >::destroy<std::pair<KEntryKey const, KEntry> > (__a=..., __p=0x584091068030) at /usr/include/c++/14.2.1/bits/alloc_traits.h:556
#13 std::_Rb_tree<KEntryKey, std::pair<KEntryKey const, KEntry>, std::_Select1st<std::pair<KEntryKey const, KEntry> >, KEntryKeyCompare, std::allocator<std::pair<KEntryKey const, KEntry> > >::_M_destroy_node (this=0x584083cbeff0, __p=0x584091068010) at /usr/include/c++/14.2.1/bits/stl_tree.h:621
#14 0x000071eaca163b8d in std::_Rb_tree<KEntryKey, std::pair<KEntryKey const, KEntry>, std::_Select1st<std::pair<KEntryKey const, KEntry> >, KEntryKeyCompare, std::allocator<std::pair<KEntryKey const, KEntry> > >::_M_drop_node (this=0x584083cbeff0, __p=0x584091068010) at /usr/include/c++/14.2.1/bits/stl_tree.h:629
#15 0x000071eaca15fbc3 in std::_Rb_tree<KEntryKey, std::pair<KEntryKey const, KEntry>, std::_Select1st<std::pair<KEntryKey const, KEntry> >, KEntryKeyCompare, std::allocator<std::pair<KEntryKey const, KEntry> > >::_M_erase (this=0x584083cbeff0, __x=0x584091068010) at /usr/include/c++/14.2.1/bits/stl_tree.h:1934
#16 0x000071eaca15fba0 in std::_Rb_tree<KEntryKey, std::pair<KEntryKey const, KEntry>, std::_Select1st<std::pair<KEntryKey const, KEntry> >, KEntryKeyCompare, std::allocator<std::pair<KEntryKey const, KEntry> > >::_M_erase (this=0x584083cbeff0, __x=0x584093cc8050) at /usr/include/c++/14.2.1/bits/stl_tree.h:1932
#17 0x000071eaca15fba0 in std::_Rb_tree<KEntryKey, std::pair<KEntryKey const, KEntry>, std::_Select1st<std::pair<KEntryKey const, KEntry> >, KEntryKeyCompare, std::allocator<std::pair<KEntryKey const, KEntry> > >::_M_erase (this=0x584083cbeff0, __x=0x584093c5ed30) at /usr/include/c++/14.2.1/bits/stl_tree.h:1932
#18 0x000071eaca15fba0 in std::_Rb_tree<KEntryKey, std::pair<KEntryKey const, KEntry>, std::_Select1st<std::pair<KEntryKey const, KEntry> >, KEntryKeyCompare, std::allocator<std::pair<KEntryKey const, KEntry> > >::_M_erase (this=0x584083cbeff0, __x=0x584093cbfdb0) at /usr/include/c++/14.2.1/bits/stl_tree.h:1932
#19 0x000071eaca16276e in std::_Rb_tree<KEntryKey, std::pair<KEntryKey const, KEntry>, std::_Select1st<std::pair<KEntryKey const, KEntry> >, KEntryKeyCompare, std::allocator<std::pair<KEntryKey const, KEntry> > >::clear (this=0x584083cbeff0) at /usr/include/c++/14.2.1/bits/stl_tree.h:1251
#20 0x000071eaca15e76c in std::map<KEntryKey, KEntry, KEntryKeyCompare, std::allocator<std::pair<KEntryKey const, KEntry> > >::clear (this=0x584083cbeff0) at /usr/include/c++/14.2.1/bits/stl_map.h:1183
#21 0x000071eaca154272 in KConfig::reparseConfiguration (this=0x584083d18f40) at /home/natalie/kde/src/kconfig/src/core/kconfig.cpp:659
#22 0x000071eaca1a6382 in KCoreConfigSkeleton::load (this=0x584084059e70) at /home/natalie/kde/src/kconfig/src/core/kcoreconfigskeleton.cpp:1293
#23 0x000071eacb0745f5 in Plasma::Applet::configChanged (this=0x584084047740) at /home/natalie/kde/src/libplasma/src/plasma/applet.cpp:804
#24 0x000071eacb0babae in Plasma::AppletPrivate::propagateConfigChanged (this=0x584083ff5a10) at /home/natalie/kde/src/libplasma/src/plasma/private/applet_p.cpp:413
#25 0x000071eacb07511e in Plasma::Applet::qt_static_metacall (_o=0x584084047740, _c=QMetaObject::InvokeMetaMethod, _id=35, _a=0x7ffeabd8f2f8) at /home/natalie/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_applet.cpp:526
#26 0x000071eac7fa35ea in ??? () at /usr/lib/libQt6Core.so.6
#27 0x000071eaca1a82eb in KCoreConfigSkeleton::configChanged (this=0x584084059e70) at /home/natalie/kde/build/kconfig/src/core/KF6ConfigCore_autogen/include/moc_kcoreconfigskeleton.cpp:162
#28 0x000071eaca1a6695 in KCoreConfigSkeleton::save (this=0x584084059e70) at /home/natalie/kde/src/kconfig/src/core/kcoreconfigskeleton.cpp:1334
#29 0x000071eac02055a5 in SystemTraySettings::writeConfigValue (this=0x584084052550, key=..., value=...) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtraysettings.cpp:137
#30 0x000071eac0204d41 in SystemTraySettings::removeKnownPlugin (this=0x584084052550, pluginId=...) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtraysettings.cpp:51
#31 0x000071eac020522c in SystemTraySettings::cleanupPlugin (this=0x584084052550, pluginId=...) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtraysettings.cpp:95
#32 0x000071eac01c36f8 in operator()<Plasma::Applet*> (__closure=0x584083ca0300, applet=0x584093ba8ac0) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtray.cpp:70
#33 0x000071eac01c41ab in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<Plasma::Applet*>, void, SystemTray::init()::<lambda(auto:52)> >::call(struct {...} &, void **) (f=..., arg=0x7ffeabd8f700) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:137
#34 0x000071eac01c405f in QtPrivate::FunctorCallable<SystemTray::init()::<lambda(auto:52)>, Plasma::Applet*>::call<QtPrivate::List<Plasma::Applet*>, void>(struct {...} &, void *, void **) (f=..., arg=0x7ffeabd8f700) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:345
#35 0x000071eac01c3eab in QtPrivate::QCallableObject<SystemTray::init()::<lambda(auto:52)>, QtPrivate::List<Plasma::Applet*>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=1, this_=0x584083ca02f0, r=0x584084047740, a=0x7ffeabd8f700, ret=0x0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:555
#36 0x000071eac7fa3397 in ??? () at /usr/lib/libQt6Core.so.6
#37 0x000071eacb08c2c2 in Plasma::Containment::appletRemoved (this=0x584084047740, _t1=0x584093ba8ac0) at /home/natalie/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_containment.cpp:743
#38 0x000071eacb0bff43 in Plasma::ContainmentPrivate::appletDeleted (this=0x58408404a420, applet=0x584093ba8ac0) at /home/natalie/kde/src/libplasma/src/plasma/private/containment_p.cpp:213
#39 0x000071eacb08ae73 in Plasma::Containment::qt_static_metacall (_o=0x584084047740, _c=QMetaObject::InvokeMetaMethod, _id=26, _a=0x7ffeabd8f8f0) at /home/natalie/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_containment.cpp:403
#40 0x000071eac7fa35ea in ??? () at /usr/lib/libQt6Core.so.6
#41 0x000071eacb0769ba in Plasma::Applet::appletDeleted (this=0x584093ba8ac0, _t1=0x584093ba8ac0) at /home/natalie/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_applet.cpp:927
#42 0x000071eacb071271 in Plasma::Applet::~Applet (this=0x584093ba8ac0, __in_chrg=<optimized out>) at /home/natalie/kde/src/libplasma/src/plasma/applet.cpp:72
#43 0x000071eacb071352 in Plasma::Applet::~Applet (this=0x584093ba8ac0, __in_chrg=<optimized out>) at /home/natalie/kde/src/libplasma/src/plasma/applet.cpp:85
#44 0x000071eac01c2c6a in SystemTray::onEnabledAppletsChanged (this=0x584084047740) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtray.cpp:366
#45 0x000071eac01cdb90 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (SystemTray::*)()>::call(void (SystemTray::*)(), SystemTray*, void**) (f=(void (SystemTray::*)(class SystemTray * const)) 0x71eac01c2a50 <SystemTray::onEnabledAppletsChanged()>, o=0x584084047740, arg=0x7ffeabd8fc40) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:145
#46 0x000071eac01cc2b8 in QtPrivate::FunctionPointer<void (SystemTray::*)()>::call<QtPrivate::List<>, void>(void (SystemTray::*)(), SystemTray*, void**) (f=(void (SystemTray::*)(class SystemTray * const)) 0x71eac01c2a50 <SystemTray::onEnabledAppletsChanged()>, o=0x584084047740, arg=0x7ffeabd8fc40) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:182
#47 0x000071eac01ca9c7 in QtPrivate::QCallableObject<void (SystemTray::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x584083ddb950, r=0x584084047740, a=0x7ffeabd8fc40, ret=0x0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:553
#48 0x000071eac7fa3397 in ??? () at /usr/lib/libQt6Core.so.6
#49 0x000071eac01e2649 in SystemTraySettings::enabledPluginsChanged (this=0x584084052550, _t1=..., _t2=...) at /home/natalie/kde/build/plasma-workspace/applets/systemtray/systemtray_static_autogen/EWIEGA46WW/moc_systemtraysettings.cpp:162
#50 0x000071eac020501d in SystemTraySettings::removeEnabledPlugin (this=0x584084052550, pluginId=...) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtraysettings.cpp:75
#51 0x000071eac020523f in SystemTraySettings::cleanupPlugin (this=0x584084052550, pluginId=...) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtraysettings.cpp:96
#52 0x000071eac01c36f8 in operator()<Plasma::Applet*> (__closure=0x584083ca0300, applet=0x584093745b10) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtray.cpp:70
#53 0x000071eac01c41ab in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<Plasma::Applet*>, void, SystemTray::init()::<lambda(auto:52)> >::call(struct {...} &, void **) (f=..., arg=0x7ffeabd8ffa0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:137
#54 0x000071eac01c405f in QtPrivate::FunctorCallable<SystemTray::init()::<lambda(auto:52)>, Plasma::Applet*>::call<QtPrivate::List<Plasma::Applet*>, void>(struct {...} &, void *, void **) (f=..., arg=0x7ffeabd8ffa0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:345
#55 0x000071eac01c3eab in QtPrivate::QCallableObject<SystemTray::init()::<lambda(auto:52)>, QtPrivate::List<Plasma::Applet*>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=1, this_=0x584083ca02f0, r=0x584084047740, a=0x7ffeabd8ffa0, ret=0x0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:555
#56 0x000071eac7fa3397 in ??? () at /usr/lib/libQt6Core.so.6
#57 0x000071eacb08c2c2 in Plasma::Containment::appletRemoved (this=0x584084047740, _t1=0x584093745b10) at /home/natalie/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_containment.cpp:743
#58 0x000071eacb0bff43 in Plasma::ContainmentPrivate::appletDeleted (this=0x58408404a420, applet=0x584093745b10) at /home/natalie/kde/src/libplasma/src/plasma/private/containment_p.cpp:213
#59 0x000071eacb08ae73 in Plasma::Containment::qt_static_metacall (_o=0x584084047740, _c=QMetaObject::InvokeMetaMethod, _id=26, _a=0x7ffeabd90190) at /home/natalie/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_containment.cpp:403
#60 0x000071eac7fa35ea in ??? () at /usr/lib/libQt6Core.so.6
#61 0x000071eacb0769ba in Plasma::Applet::appletDeleted (this=0x584093745b10, _t1=0x584093745b10) at /home/natalie/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_applet.cpp:927
#62 0x000071eacb071271 in Plasma::Applet::~Applet (this=0x584093745b10, __in_chrg=<optimized out>) at /home/natalie/kde/src/libplasma/src/plasma/applet.cpp:72
#63 0x000071eacb071352 in Plasma::Applet::~Applet (this=0x584093745b10, __in_chrg=<optimized out>) at /home/natalie/kde/src/libplasma/src/plasma/applet.cpp:85
#64 0x000071eac01c2c6a in SystemTray::onEnabledAppletsChanged (this=0x584084047740) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtray.cpp:366
#65 0x000071eac01cdb90 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (SystemTray::*)()>::call(void (SystemTray::*)(), SystemTray*, void**) (f=(void (SystemTray::*)(class SystemTray * const)) 0x71eac01c2a50 <SystemTray::onEnabledAppletsChanged()>, o=0x584084047740, arg=0x7ffeabd904e0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:145
#66 0x000071eac01cc2b8 in QtPrivate::FunctionPointer<void (SystemTray::*)()>::call<QtPrivate::List<>, void>(void (SystemTray::*)(), SystemTray*, void**) (f=(void (SystemTray::*)(class SystemTray * const)) 0x71eac01c2a50 <SystemTray::onEnabledAppletsChanged()>, o=0x584084047740, arg=0x7ffeabd904e0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:182
#67 0x000071eac01ca9c7 in QtPrivate::QCallableObject<void (SystemTray::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x584083ddb950, r=0x584084047740, a=0x7ffeabd904e0, ret=0x0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:553
#68 0x000071eac7fa3397 in ??? () at /usr/lib/libQt6Core.so.6
#69 0x000071eac01e2649 in SystemTraySettings::enabledPluginsChanged (this=0x584084052550, _t1=..., _t2=...) at /home/natalie/kde/build/plasma-workspace/applets/systemtray/systemtray_static_autogen/EWIEGA46WW/moc_systemtraysettings.cpp:162
#70 0x000071eac020501d in SystemTraySettings::removeEnabledPlugin (this=0x584084052550, pluginId=...) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtraysettings.cpp:75
#71 0x000071eac020523f in SystemTraySettings::cleanupPlugin (this=0x584084052550, pluginId=...) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtraysettings.cpp:96
#72 0x000071eac01c36f8 in operator()<Plasma::Applet*> (__closure=0x584083ca0300, applet=0x5840937badc0) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtray.cpp:70
#73 0x000071eac01c41ab in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<Plasma::Applet*>, void, SystemTray::init()::<lambda(auto:52)> >::call(struct {...} &, void **) (f=..., arg=0x7ffeabd90840) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:137
#74 0x000071eac01c405f in QtPrivate::FunctorCallable<SystemTray::init()::<lambda(auto:52)>, Plasma::Applet*>::call<QtPrivate::List<Plasma::Applet*>, void>(struct {...} &, void *, void **) (f=..., arg=0x7ffeabd90840) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:345
#75 0x000071eac01c3eab in QtPrivate::QCallableObject<SystemTray::init()::<lambda(auto:52)>, QtPrivate::List<Plasma::Applet*>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=1, this_=0x584083ca02f0, r=0x584084047740, a=0x7ffeabd90840, ret=0x0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:555
#76 0x000071eac7fa3397 in ??? () at /usr/lib/libQt6Core.so.6
#77 0x000071eacb08c2c2 in Plasma::Containment::appletRemoved (this=0x584084047740, _t1=0x5840937badc0) at /home/natalie/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_containment.cpp:743
#78 0x000071eacb0bff43 in Plasma::ContainmentPrivate::appletDeleted (this=0x58408404a420, applet=0x5840937badc0) at /home/natalie/kde/src/libplasma/src/plasma/private/containment_p.cpp:213
#79 0x000071eacb08ae73 in Plasma::Containment::qt_static_metacall (_o=0x584084047740, _c=QMetaObject::InvokeMetaMethod, _id=26, _a=0x7ffeabd90a30) at /home/natalie/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_containment.cpp:403
#80 0x000071eac7fa35ea in ??? () at /usr/lib/libQt6Core.so.6
#81 0x000071eacb0769ba in Plasma::Applet::appletDeleted (this=0x5840937badc0, _t1=0x5840937badc0) at /home/natalie/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_applet.cpp:927
#82 0x000071eacb071271 in Plasma::Applet::~Applet (this=0x5840937badc0, __in_chrg=<optimized out>) at /home/natalie/kde/src/libplasma/src/plasma/applet.cpp:72
#83 0x000071eacb071352 in Plasma::Applet::~Applet (this=0x5840937badc0, __in_chrg=<optimized out>) at /home/natalie/kde/src/libplasma/src/plasma/applet.cpp:85
#84 0x000071eac01c2c6a in SystemTray::onEnabledAppletsChanged (this=0x584084047740) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtray.cpp:366
#85 0x000071eac01cdb90 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (SystemTray::*)()>::call(void (SystemTray::*)(), SystemTray*, void**) (f=(void (SystemTray::*)(class SystemTray * const)) 0x71eac01c2a50 <SystemTray::onEnabledAppletsChanged()>, o=0x584084047740, arg=0x7ffeabd90d80) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:145
#86 0x000071eac01cc2b8 in QtPrivate::FunctionPointer<void (SystemTray::*)()>::call<QtPrivate::List<>, void>(void (SystemTray::*)(), SystemTray*, void**) (f=(void (SystemTray::*)(class SystemTray * const)) 0x71eac01c2a50 <SystemTray::onEnabledAppletsChanged()>, o=0x584084047740, arg=0x7ffeabd90d80) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:182
#87 0x000071eac01ca9c7 in QtPrivate::QCallableObject<void (SystemTray::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x584083ddb950, r=0x584084047740, a=0x7ffeabd90d80, ret=0x0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:553
#88 0x000071eac7fa3397 in ??? () at /usr/lib/libQt6Core.so.6
#89 0x000071eac01e2649 in SystemTraySettings::enabledPluginsChanged (this=0x584084052550, _t1=..., _t2=...) at /home/natalie/kde/build/plasma-workspace/applets/systemtray/systemtray_static_autogen/EWIEGA46WW/moc_systemtraysettings.cpp:162
#90 0x000071eac020501d in SystemTraySettings::removeEnabledPlugin (this=0x584084052550, pluginId=...) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtraysettings.cpp:75
#91 0x000071eac020523f in SystemTraySettings::cleanupPlugin (this=0x584084052550, pluginId=...) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtraysettings.cpp:96
#92 0x000071eac01c36f8 in operator()<Plasma::Applet*> (__closure=0x584083ca0300, applet=0x584093cd1d90) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtray.cpp:70
#93 0x000071eac01c41ab in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<Plasma::Applet*>, void, SystemTray::init()::<lambda(auto:52)> >::call(struct {...} &, void **) (f=..., arg=0x7ffeabd910e0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:137
#94 0x000071eac01c405f in QtPrivate::FunctorCallable<SystemTray::init()::<lambda(auto:52)>, Plasma::Applet*>::call<QtPrivate::List<Plasma::Applet*>, void>(struct {...} &, void *, void **) (f=..., arg=0x7ffeabd910e0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:345
#95 0x000071eac01c3eab in QtPrivate::QCallableObject<SystemTray::init()::<lambda(auto:52)>, QtPrivate::List<Plasma::Applet*>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=1, this_=0x584083ca02f0, r=0x584084047740, a=0x7ffeabd910e0, ret=0x0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:555
#96 0x000071eac7fa3397 in ??? () at /usr/lib/libQt6Core.so.6
#97 0x000071eacb08c2c2 in Plasma::Containment::appletRemoved (this=0x584084047740, _t1=0x584093cd1d90) at /home/natalie/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_containment.cpp:743
#98 0x000071eacb0bff43 in Plasma::ContainmentPrivate::appletDeleted (this=0x58408404a420, applet=0x584093cd1d90) at /home/natalie/kde/src/libplasma/src/plasma/private/containment_p.cpp:213
#99 0x000071eacb08ae73 in Plasma::Containment::qt_static_metacall (_o=0x584084047740, _c=QMetaObject::InvokeMetaMethod, _id=26, _a=0x7ffeabd912d0) at /home/natalie/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_containment.cpp:403
#100 0x000071eac7fa35ea in ??? () at /usr/lib/libQt6Core.so.6
#101 0x000071eacb0769ba in Plasma::Applet::appletDeleted (this=0x584093cd1d90, _t1=0x584093cd1d90) at /home/natalie/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_applet.cpp:927
#102 0x000071eacb071271 in Plasma::Applet::~Applet (this=0x584093cd1d90, __in_chrg=<optimized out>) at /home/natalie/kde/src/libplasma/src/plasma/applet.cpp:72
#103 0x000071eacb071352 in Plasma::Applet::~Applet (this=0x584093cd1d90, __in_chrg=<optimized out>) at /home/natalie/kde/src/libplasma/src/plasma/applet.cpp:85
#104 0x000071eac01c2c6a in SystemTray::onEnabledAppletsChanged (this=0x584084047740) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtray.cpp:366
#105 0x000071eac01cdb90 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (SystemTray::*)()>::call(void (SystemTray::*)(), SystemTray*, void**) (f=(void (SystemTray::*)(class SystemTray * const)) 0x71eac01c2a50 <SystemTray::onEnabledAppletsChanged()>, o=0x584084047740, arg=0x7ffeabd91620) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:145
#106 0x000071eac01cc2b8 in QtPrivate::FunctionPointer<void (SystemTray::*)()>::call<QtPrivate::List<>, void>(void (SystemTray::*)(), SystemTray*, void**) (f=(void (SystemTray::*)(class SystemTray * const)) 0x71eac01c2a50 <SystemTray::onEnabledAppletsChanged()>, o=0x584084047740, arg=0x7ffeabd91620) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:182
#107 0x000071eac01ca9c7 in QtPrivate::QCallableObject<void (SystemTray::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x584083ddb950, r=0x584084047740, a=0x7ffeabd91620, ret=0x0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:553
#108 0x000071eac7fa3397 in ??? () at /usr/lib/libQt6Core.so.6
#109 0x000071eac01e2649 in SystemTraySettings::enabledPluginsChanged (this=0x584084052550, _t1=..., _t2=...) at /home/natalie/kde/build/plasma-workspace/applets/systemtray/systemtray_static_autogen/EWIEGA46WW/moc_systemtraysettings.cpp:162
#110 0x000071eac020501d in SystemTraySettings::removeEnabledPlugin (this=0x584084052550, pluginId=...) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtraysettings.cpp:75
#111 0x000071eac020523f in SystemTraySettings::cleanupPlugin (this=0x584084052550, pluginId=...) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtraysettings.cpp:96
#112 0x000071eac01c36f8 in operator()<Plasma::Applet*> (__closure=0x584083ca0300, applet=0x584093611b60) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtray.cpp:70
#113 0x000071eac01c41ab in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<Plasma::Applet*>, void, SystemTray::init()::<lambda(auto:52)> >::call(struct {...} &, void **) (f=..., arg=0x7ffeabd91980) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:137
#114 0x000071eac01c405f in QtPrivate::FunctorCallable<SystemTray::init()::<lambda(auto:52)>, Plasma::Applet*>::call<QtPrivate::List<Plasma::Applet*>, void>(struct {...} &, void *, void **) (f=..., arg=0x7ffeabd91980) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:345
#115 0x000071eac01c3eab in QtPrivate::QCallableObject<SystemTray::init()::<lambda(auto:52)>, QtPrivate::List<Plasma::Applet*>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=1, this_=0x584083ca02f0, r=0x584084047740, a=0x7ffeabd91980, ret=0x0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:555
#116 0x000071eac7fa3397 in ??? () at /usr/lib/libQt6Core.so.6
#117 0x000071eacb08c2c2 in Plasma::Containment::appletRemoved (this=0x584084047740, _t1=0x584093611b60) at /home/natalie/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_containment.cpp:743
#118 0x000071eacb0bff43 in Plasma::ContainmentPrivate::appletDeleted (this=0x58408404a420, applet=0x584093611b60) at /home/natalie/kde/src/libplasma/src/plasma/private/containment_p.cpp:213
#119 0x000071eacb08ae73 in Plasma::Containment::qt_static_metacall (_o=0x584084047740, _c=QMetaObject::InvokeMetaMethod, _id=26, _a=0x7ffeabd91b70) at /home/natalie/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_containment.cpp:403
#120 0x000071eac7fa35ea in ??? () at /usr/lib/libQt6Core.so.6
#121 0x000071eacb0769ba in Plasma::Applet::appletDeleted (this=0x584093611b60, _t1=0x584093611b60) at /home/natalie/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_applet.cpp:927
#122 0x000071eacb071271 in Plasma::Applet::~Applet (this=0x584093611b60, __in_chrg=<optimized out>) at /home/natalie/kde/src/libplasma/src/plasma/applet.cpp:72
#123 0x000071eacb071352 in Plasma::Applet::~Applet (this=0x584093611b60, __in_chrg=<optimized out>) at /home/natalie/kde/src/libplasma/src/plasma/applet.cpp:85
#124 0x000071eac01c2c6a in SystemTray::onEnabledAppletsChanged (this=0x584084047740) at /home/natalie/kde/src/plasma-workspace/applets/systemtray/systemtray.cpp:366
#125 0x000071eac01cdb90 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (SystemTray::*)()>::call(void (SystemTray::*)(), SystemTray*, void**) (f=(void (SystemTray::*)(class SystemTray * const)) 0x71eac01c2a50 <SystemTray::onEnabledAppletsChanged()>, o=0x584084047740, arg=0x7ffeabd91ec0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:145
#126 0x000071eac01cc2b8 in QtPrivate::FunctionPointer<void (SystemTray::*)()>::call<QtPrivate::List<>, void>(void (SystemTray::*)(), SystemTray*, void**) (f=(void (SystemTray::*)(class SystemTray * const)) 0x71eac01c2a50 <SystemTray::onEnabledAppletsChanged()>, o=0x584084047740, arg=0x7ffeabd91ec0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:182
#127 0x000071eac01ca9c7 in QtPrivate::QCallableObject<void (SystemTray::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x584083ddb950, r=0x584084047740, a=0x7ffeabd91ec0, ret=0x0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:553
Reverting https://invent.kde.org/plasma/plasma-workspace/-/commit/6c08876d8be5d3dd3d083a4b10988bd1f2512194 eliminates the crash, specifically the changes to systemtray.cpp Can reproduce. A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/4789 Looks good, no crash with 4789 applied Git commit 20255a4c54891c349d322a2e992c136e041b9c22 by Akseli Lahtinen. Committed on 04/10/2024 at 11:17. Pushed by akselmo into branch 'master'. systemtray.cpp: Make AppletRemoved signal a singleshot connection If user disables an entry in system settings, this connection will end up in an endless loop: When the `cleanupPlugin` is called, we eventually end up calling `SystemTray::onEnabledAppletsChanged` through `SystemTraySettings::enabledPluginsChanged` signal. There we delete applet and applets deconstructor calls `appletDeleted`. This then ends up in `ContainmentPrivate::appletDeleted` where the signal `appletRemoved` is emitted. This then makes the signal run over this same connection, then `cleanupPlugin`.. And it loops. Adding `Qt::SingleShotConnection` disconnects the connection after it's called, so it won't get stuck in a loop. M +15 -10 applets/systemtray/systemtray.cpp https://invent.kde.org/plasma/plasma-workspace/-/commit/20255a4c54891c349d322a2e992c136e041b9c22 |