Bug 437531 - Crash after closing from a really weird state
Summary: Crash after closing from a really weird state
Status: RESOLVED DUPLICATE of bug 436609
Alias: None
Product: plasma-systemmonitor
Classification: Applications
Component: general (show other bugs)
Version: 5.21.90
Platform: Fedora RPMs Linux
: NOR crash
Target Milestone: ---
Assignee: KSysGuard Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-05-23 06:58 UTC by Alex
Modified: 2021-05-24 10:03 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
backtrace from drkonqi (10.20 KB, text/vnd.kde.kcrash-report)
2021-05-23 06:58 UTC, Alex
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alex 2021-05-23 06:58:11 UTC
Created attachment 138699 [details]
backtrace from drkonqi

I'll get some more specific reproduction steps later, but the jist of it is that I think I was in edit mode on a new page, when I deleted it, and attempted to navigate back to the Overview page. There was a dropdown sensor selection that was incorrectly still open, covering up the left pane. Then I closed the app, which produced a crash.
Comment 1 Marco Martin 2021-05-24 08:36:41 UTC
pasting inline

Application: System Monitor (plasma-systemmonitor), signal: Segmentation fault
Content of s_kcrashErrorMessage: [Current thread is 1 (Thread 0x7f7f5b694940 (LWP 3424))]
[KCrash Handler]
#6  0x00007f7f5f8b106f in QQuickItem::setVisible (this=<optimized out>, v=false) at items/qquickitem.cpp:5959
#7  0x00007f7f380e5f5a in ToolBarLayoutDelegate::ensureItemVisibility (this=0x5628de720ad0) at /usr/src/debug/kf5-kirigami2-5.82.0-1.fc34.x86_64/src/toolbarlayoutdelegate.h:87
#8  0x00007f7f602704b0 in QtPrivate::QSlotObjectBase::call (a=0x7ffd7d0828c0, r=<optimized out>, this=0x5628ddb7c3a0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#9  doActivate<false> (sender=0x5628dc73f990, signal_index=18, argv=0x7ffd7d0828c0) at kernel/qobject.cpp:3886
#10 0x00007f7f5f8b38cb in QQuickItemPrivate::setEffectiveVisibleRecur (this=this@entry=0x5628dcac4ca0, newEffectiveVisible=<optimized out>) at items/qquickitem.cpp:6057
#11 0x00007f7f5f8b7119 in QQuickItem::setParentItem (this=0x5628dc73f990, parentItem=<optimized out>) at items/qquickitem.cpp:2710
#12 0x00007f7f5f8aba5a in QQuickItem::~QQuickItem (this=<optimized out>, this=<optimized out>) at items/qquickitem.cpp:2311
#13 0x00007f7f006ba242 in QQuickButton::~QQuickButton (this=<optimized out>, this=<optimized out>) at ../../../include/QtQuickTemplates2/5.15.2/QtQuickTemplates2/private/../../../../../src/quicktemplates2/qquickbutton_p.h:57
#14 QQuickToolButton::~QQuickToolButton (this=<optimized out>, this=<optimized out>) at ../../../include/QtQuickTemplates2/5.15.2/QtQuickTemplates2/private/../../../../../src/quicktemplates2/qquicktoolbutton_p.h:55
#15 QQmlPrivate::QQmlElement<QQuickToolButton>::~QQmlElement (this=<optimized out>, this=<optimized out>) at /usr/include/qt5/QtQml/qqmlprivate.h:144
#16 QQmlPrivate::QQmlElement<QQuickToolButton>::~QQmlElement (this=<optimized out>, this=<optimized out>) at /usr/include/qt5/QtQml/qqmlprivate.h:144
#17 0x00007f7f380e6caa in ToolBarLayoutDelegate::~ToolBarLayoutDelegate (this=<optimized out>, this=<optimized out>) at /usr/src/debug/kf5-kirigami2-5.82.0-1.fc34.x86_64/src/toolbarlayoutdelegate.cpp:84
#18 0x00007f7f380e6d4a in ToolBarLayoutDelegate::~ToolBarLayoutDelegate (this=<optimized out>, this=<optimized out>) at /usr/src/debug/kf5-kirigami2-5.82.0-1.fc34.x86_64/src/toolbarlayoutdelegate.cpp:70
#19 std::default_delete<ToolBarLayoutDelegate>::operator() (__ptr=0x5628de720ad0, this=<optimized out>) at /usr/include/c++/11/bits/unique_ptr.h:85
#20 std::unique_ptr<ToolBarLayoutDelegate, std::default_delete<ToolBarLayoutDelegate> >::~unique_ptr (this=<optimized out>, this=<optimized out>) at /usr/include/c++/11/bits/unique_ptr.h:361
#21 std::pair<QObject* const, std::unique_ptr<ToolBarLayoutDelegate, std::default_delete<ToolBarLayoutDelegate> > >::~pair (this=<optimized out>, this=<optimized out>) at /usr/include/c++/11/bits/stl_pair.h:211
#22 __gnu_cxx::new_allocator<std::__detail::_Hash_node<std::pair<QObject* const, std::unique_ptr<ToolBarLayoutDelegate, std::default_delete<ToolBarLayoutDelegate> > >, false> >::destroy<std::pair<QObject* const, std::unique_ptr<ToolBarLayoutDelegate, std::default_delete<ToolBarLayoutDelegate> > > > (__p=0x5628da9dbf58, this=0x5628deb38ec8) at /usr/include/c++/11/ext/new_allocator.h:162
#23 std::allocator_traits<std::allocator<std::__detail::_Hash_node<std::pair<QObject* const, std::unique_ptr<ToolBarLayoutDelegate, std::default_delete<ToolBarLayoutDelegate> > >, false> > >::destroy<std::pair<QObject* const, std::unique_ptr<ToolBarLayoutDelegate, std::default_delete<ToolBarLayoutDelegate> > > > (__p=0x5628da9dbf58, __a=...) at /usr/include/c++/11/bits/alloc_traits.h:531
#24 std::__detail::_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<QObject* const, std::unique_ptr<ToolBarLayoutDelegate, std::default_delete<ToolBarLayoutDelegate> > >, false> > >::_M_deallocate_node (__n=0x5628da9dbf50, this=0x5628deb38ec8) at /usr/include/c++/11/bits/hashtable_policy.h:1891
#25 std::_Hashtable<QObject*, std::pair<QObject* const, std::unique_ptr<ToolBarLayoutDelegate, std::default_delete<ToolBarLayoutDelegate> > >, std::allocator<std::pair<QObject* const, std::unique_ptr<ToolBarLayoutDelegate, std::default_delete<ToolBarLayoutDelegate> > > >, std::__detail::_Select1st, std::equal_to<QObject*>, std::hash<QObject*>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::_M_erase (this=0x5628deb38ec8, __bkt=<optimized out>, __prev_n=<optimized out>, __n=0x5628da9dbf50) at /usr/include/c++/11/bits/hashtable.h:2160
#26 0x00007f7f380e70f0 in std::_Hashtable<QObject*, std::pair<QObject* const, std::unique_ptr<ToolBarLayoutDelegate, std::default_delete<ToolBarLayoutDelegate> > >, std::allocator<std::pair<QObject* const, std::unique_ptr<ToolBarLayoutDelegate, std::default_delete<ToolBarLayoutDelegate> > > >, std::__detail::_Select1st, std::equal_to<QObject*>, std::hash<QObject*>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::erase (__it=..., this=0x5628deb38ec8) at /usr/include/c++/11/bits/hashtable.h:2135
#27 std::_Hashtable<QObject*, std::pair<QObject* const, std::unique_ptr<ToolBarLayoutDelegate, std::default_delete<ToolBarLayoutDelegate> > >, std::allocator<std::pair<QObject* const, std::unique_ptr<ToolBarLayoutDelegate, std::default_delete<ToolBarLayoutDelegate> > > >, std::__detail::_Select1st, std::equal_to<QObject*>, std::hash<QObject*>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::erase (__it=..., this=0x5628deb38ec8) at /usr/include/c++/11/bits/hashtable.h:915
#28 std::unordered_map<QObject*, std::unique_ptr<ToolBarLayoutDelegate, std::default_delete<ToolBarLayoutDelegate> >, std::hash<QObject*>, std::equal_to<QObject*>, std::allocator<std::pair<QObject* const, std::unique_ptr<ToolBarLayoutDelegate, std::default_delete<ToolBarLayoutDelegate> > > > >::erase (__position=..., this=0x5628deb38ec8) at /usr/include/c++/11/bits/unordered_map.h:746
#29 operator() (action=<optimized out>, __closure=0x5628d7b2edb0) at /usr/src/debug/kf5-kirigami2-5.82.0-1.fc34.x86_64/src/toolbarlayout.cpp:123
#30 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QObject*>, void, ToolBarLayout::addAction(QObject*)::<lambda(QObject*)> >::call (arg=<optimized out>, f=...) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:146
#31 QtPrivate::Functor<ToolBarLayout::addAction(QObject*)::<lambda(QObject*)>, 1>::call<QtPrivate::List<QObject*>, void> (arg=<optimized out>, f=...) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:256
#32 QtPrivate::QFunctorSlotObject<ToolBarLayout::addAction(QObject*)::<lambda(QObject*)>, 1, QtPrivate::List<QObject*>, void>::impl (which=<optimized out>, r=<optimized out>, ret=<optimized out>, a=<optimized out>, this_=0x5628d7b2eda0) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:443
#33 QtPrivate::QFunctorSlotObject<ToolBarLayout::addAction(QObject*)::<lambda(QObject*)>, 1, QtPrivate::List<QObject*>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=<optimized out>, this_=0x5628d7b2eda0, r=<optimized out>, a=<optimized out>, ret=<optimized out>) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:436
#34 0x00007f7f602704b0 in QtPrivate::QSlotObjectBase::call (a=0x7ffd7d082be0, r=<optimized out>, this=0x5628d7b2eda0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#35 doActivate<false> (sender=0x5628d8ad8460, signal_index=0, argv=0x7ffd7d082be0) at kernel/qobject.cpp:3886
#36 0x00007f7f6026a9e7 in QMetaObject::activate (sender=sender@entry=0x5628d8ad8460, m=m@entry=0x7f7f604fc3e0 <QObject::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd7d082be0) at kernel/qobject.cpp:3946
#37 0x00007f7f6026aaa3 in QObject::destroyed (this=this@entry=0x5628d8ad8460, _t1=<optimized out>, _t1@entry=0x5628d8ad8460) at .moc/moc_qobject.cpp:219
#38 0x00007f7f6026d10a in QObject::~QObject (this=this@entry=0x5628d8ad8460, __in_chrg=<optimized out>) at kernel/qobject.cpp:992
#39 0x00007f7f4db3572c in QQuickAction::~QQuickAction (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qt5-qtquickcontrols2-5.15.2-3.fc34.x86_64/src/quicktemplates2/qquickaction.cpp:347
#40 0x00007f7f006bb89f in QQmlPrivate::QQmlElement<QQuickAction>::~QQmlElement (this=<optimized out>, this=<optimized out>) at /usr/include/qt5/QtQml/qqmlprivate.h:144
#41 QQmlPrivate::QQmlElement<QQuickAction>::~QQmlElement (this=<optimized out>, this=<optimized out>) at /usr/include/qt5/QtQml/qqmlprivate.h:144
#42 0x00007f7f60266eda in QObjectPrivate::deleteChildren (this=this@entry=0x5628d9b96f50) at kernel/qobject.cpp:2104
#43 0x00007f7f6026d184 in QObject::~QObject (this=this@entry=0x5628d9b9f9b0, __in_chrg=<optimized out>) at kernel/qobject.cpp:1082
#44 0x00007f7f5f8abc15 in QQuickItem::~QQuickItem (this=<optimized out>, this=<optimized out>) at items/qquickitem.cpp:2304
#45 0x00007f7f32f680bc in KSysGuard::SensorFace::~SensorFace (this=<optimized out>, this=<optimized out>) at /usr/src/debug/libksysguard-5.21.90-3.fc34.x86_64/faces/SensorFace.cpp:43
#46 0x00007f7f0004d9d9 in QQmlPrivate::QQmlElement<KSysGuard::SensorFace>::~QQmlElement (this=<optimized out>, this=<optimized out>) at /usr/include/qt5/QtQml/qqmlprivate.h:144
#47 QQmlPrivate::QQmlElement<KSysGuard::SensorFace>::~QQmlElement (this=<optimized out>, this=<optimized out>) at /usr/include/qt5/QtQml/qqmlprivate.h:144
#48 0x00007f7f60266eda in QObjectPrivate::deleteChildren (this=this@entry=0x5628dbc506d0) at kernel/qobject.cpp:2104
#49 0x00007f7f6026d184 in QObject::~QObject (this=0x5628da15d9c0, __in_chrg=<optimized out>) at kernel/qobject.cpp:1082
#50 0x00007f7f32f6434d in KSysGuard::SensorFaceController::~SensorFaceController (this=<optimized out>, this=<optimized out>) at /usr/src/debug/libksysguard-5.21.90-3.fc34.x86_64/faces/SensorFaceController.cpp:407
#51 0x00007f7f60266eda in QObjectPrivate::deleteChildren (this=this@entry=0x5628d75ea950) at kernel/qobject.cpp:2104
#52 0x00007f7f6026d184 in QObject::~QObject (this=0x7ffd7d083080, __in_chrg=<optimized out>) at kernel/qobject.cpp:1082
#53 0x00005628d5f90a06 in main ()
[Inferior 1 (process 3424) detached]
Comment 2 Marco Martin 2021-05-24 09:26:16 UTC
looking at the backtrace it seems that the connection between full and updateitemvisibility is triggered anyways even if was manually disconnected?
Comment 3 David Edmundson 2021-05-24 10:03:32 UTC

*** This bug has been marked as a duplicate of bug 436609 ***