Bug 441801 - KMyMoney crash after configure toolbar then select new view
Summary: KMyMoney crash after configure toolbar then select new view
Status: RESOLVED FIXED
Alias: None
Product: kmymoney
Classification: Applications
Component: general (show other bugs)
Version: 5.1.2
Platform: Neon Linux
: NOR crash
Target Milestone: ---
Assignee: KMyMoney Devel Mailing List
URL:
Keywords: drkonqi
: 451583 (view as bug list)
Depends on:
Blocks:
 
Reported: 2021-08-31 07:52 UTC by Paul Worrall
Modified: 2024-08-12 11:36 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.2
Sentry Crash Report:


Attachments
New crash information added by DrKonqi (6.66 KB, text/plain)
2022-12-30 10:53 UTC, Nico Kruber
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Paul Worrall 2021-08-31 07:52:52 UTC
Application: kmymoney (5.1.2)

Qt Version: 5.15.3
Frameworks Version: 5.85.0
Operating System: Linux 5.11.0-27-generic x86_64
Windowing System: Wayland
Drkonqi Version: 5.22.4
Distribution: KDE neon User Edition 5.22

-- Information about the crash:
- What I was doing when the application crashed:
1. Settings -> Configure Toolbars...
2. Add or remove something to the toolbar, and click OK
3. Select a different view

The crash can be reproduced every time.

-- Backtrace:
Application: KMyMoney (kmymoney), signal: Segmentation fault

[New LWP 4919]
[New LWP 4922]
[New LWP 4923]
[New LWP 4924]
[New LWP 4925]
[New LWP 4926]
[New LWP 4928]
[New LWP 4929]
[New LWP 4930]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007f29cddfdaff in __GI___poll (fds=0x7ffff5606fb8, nfds=1, timeout=1000) at ../sysdeps/unix/sysv/linux/poll.c:29
[Current thread is 1 (Thread 0x7f29d2da2ec0 (LWP 4916))]

Thread 10 (Thread 0x7f29a2ffd700 (LWP 4930)):
#0  0x00007f29cb4af508 in g_mutex_unlock () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f29cb4618e1 in g_main_context_prepare () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f29cb46229b in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f29cb4624a3 in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f29ce626fdb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f2944000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007f29ce5cb26b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f29a2ffcbe0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#6  0x00007f29ce3e4c22 in QThread::exec() (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007f29ce3e5dbc in QThreadPrivate::start(void*) (arg=0x56374b84a040) at thread/qthread_unix.cpp:329
#8  0x00007f29cc721609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#9  0x00007f29cde0a293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 9 (Thread 0x7f29a37fe700 (LWP 4929)):
#0  0x00007f29cb4af4dd in g_mutex_lock () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f29cb4618fa in g_main_context_prepare () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f29cb46229b in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f29cb4624a3 in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f29ce626fdb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f294c000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007f29ce5cb26b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f29a37fdbe0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#6  0x00007f29ce3e4c22 in QThread::exec() (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007f29ce3e5dbc in QThreadPrivate::start(void*) (arg=0x56374a867070) at thread/qthread_unix.cpp:329
#8  0x00007f29cc721609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#9  0x00007f29cde0a293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 8 (Thread 0x7f29aa5bf700 (LWP 4928)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x7f29d20699b4) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x56374ab50720, cond=0x7f29d2069988) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x7f29d2069988, mutex=0x56374ab50720) at pthread_cond_wait.c:647
#3  0x00007f29ce120e30 in std::condition_variable::wait(std::unique_lock<std::mutex>&) () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4  0x00007f29d15fad01 in  () at /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5
#5  0x00007f29d15fae1f in  () at /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5
#6  0x00007f29ce126de4 in  () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#7  0x00007f29cc721609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#8  0x00007f29cde0a293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 0x7f29aaffd700 (LWP 4926)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x56374a9786a8) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x56374a978658, cond=0x56374a978680) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x56374a978680, mutex=0x56374a978658) at pthread_cond_wait.c:647
#3  0x00007f29b682fe7b in  () at /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#4  0x00007f29b682fa7b in  () at /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#5  0x00007f29cc721609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007f29cde0a293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7f29ab7fe700 (LWP 4925)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x56374a9786a8) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x56374a978658, cond=0x56374a978680) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x56374a978680, mutex=0x56374a978658) at pthread_cond_wait.c:647
#3  0x00007f29b682fe7b in  () at /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#4  0x00007f29b682fa7b in  () at /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#5  0x00007f29cc721609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007f29cde0a293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7f29a3fff700 (LWP 4924)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x56374a9786a8) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x56374a978658, cond=0x56374a978680) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x56374a978680, mutex=0x56374a978658) at pthread_cond_wait.c:647
#3  0x00007f29b682fe7b in  () at /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#4  0x00007f29b682fa7b in  () at /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#5  0x00007f29cc721609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007f29cde0a293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f29abfff700 (LWP 4923)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x56374a9786a8) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x56374a978658, cond=0x56374a978680) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x56374a978680, mutex=0x56374a978658) at pthread_cond_wait.c:647
#3  0x00007f29b682fe7b in  () at /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#4  0x00007f29b682fa7b in  () at /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#5  0x00007f29cc721609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007f29cde0a293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f29b0f2f700 (LWP 4922)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x56374a977ef4) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x56374a977ea0, cond=0x56374a977ec8) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x56374a977ec8, mutex=0x56374a977ea0) at pthread_cond_wait.c:647
#3  0x00007f29b682fe7b in  () at /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#4  0x00007f29b682fa7b in  () at /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#5  0x00007f29cc721609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007f29cde0a293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f29c73f7700 (LWP 4919)):
#0  __libc_enable_asynccancel () at ../sysdeps/unix/sysv/linux/x86_64/cancellation.S:56
#1  0x00007f29cddf9167 in __GI___libc_read (nbytes=16, buf=0x7f29c73f69a0, fd=7) at ../sysdeps/unix/sysv/linux/read.c:26
#2  __GI___libc_read (fd=7, buf=0x7f29c73f69a0, nbytes=16) at ../sysdeps/unix/sysv/linux/read.c:24
#3  0x00007f29cb4aab2f in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f29cb461ebe in g_main_context_check () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f29cb462312 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#6  0x00007f29cb4624a3 in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#7  0x00007f29ce626fdb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f29c0000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#8  0x00007f29ce5cb26b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f29c73f6bb0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#9  0x00007f29ce3e4c22 in QThread::exec() (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#10 0x00007f29ce888f4b in  () at /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#11 0x00007f29ce3e5dbc in QThreadPrivate::start(void*) (arg=0x7f29ce90cd80) at thread/qthread_unix.cpp:329
#12 0x00007f29cc721609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#13 0x00007f29cde0a293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f29d2da2ec0 (LWP 4916)):
[KCrash Handler]
#4  0x00007f29d2219bb5 in QWidget::testAttribute_helper(Qt::WidgetAttribute) const (this=0x56374aae6a20, attribute=attribute@entry=Qt::WA_ForceDisabled) at kernel/qwidget.cpp:11131
#5  0x00007f29d2221fc0 in QWidget::testAttribute(Qt::WidgetAttribute) const (attribute=Qt::WA_ForceDisabled, this=0x56374aae6a20) at ../../include/QtWidgets/../../src/widgets/kernel/qwidget.h:884
#6  QWidget::setAttribute(Qt::WidgetAttribute, bool) (this=0x56374aae6a20, attribute=attribute@entry=Qt::WA_ForceDisabled, on=false) at kernel/qwidget.cpp:10913
#7  0x00007f29d222b8b2 in QWidget::setEnabled(bool) (this=<optimized out>, enable=enable@entry=true) at kernel/qwidget.cpp:3217
#8  0x0000563749024a73 in KGlobalLedgerView::updateActions(MyMoneyObject const&) (this=0x56374ad6df60, obj=...) at ./kmymoney/views/kgloballedgerview.cpp:227
#9  0x000056374907278a in KMyMoneyView::slotObjectSelected(MyMoneyObject const&) (this=0x56374aca3550, obj=...) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qarraydata.h:236
#10 0x00005637490734d8 in KMyMoneyView::resetViewSelection() (this=0x56374aca3550) at ./kmymoney/views/kmymoneyview.cpp:638
#11 0x0000563749076bf5 in KMyMoneyView::slotCustomActionRequested(View, eView::Action) (this=0x56374aca3550, view=<optimized out>, action=<optimized out>) at ./kmymoney/views/kmymoneyview.cpp:783
#12 0x00007f29ce60378e in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffff5607f50, r=0x56374aca3550, this=0x56374ac56380) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#13 doActivate<false>(QObject*, int, void**) (sender=0x56374abe1330, signal_index=9, argv=0x7ffff5607f50) at kernel/qobject.cpp:3886
#14 0x00007f29ce5fcb57 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x56374abe1330, m=m@entry=0x7f29d3701d00 <KMyMoneyViewBase::staticMetaObject>, local_signal_index=local_signal_index@entry=2, argv=argv@entry=0x7ffff5607f50) at kernel/qobject.cpp:3946
#15 0x00007f29d369da93 in KMyMoneyViewBase::customActionRequested(View, eView::Action) (this=this@entry=0x56374abe1330, _t1=<optimized out>, _t1@entry=View::Investments, _t2=<optimized out>, _t2@entry=eView::Action::AboutToShow) at ./obj-x86_64-linux-gnu/kmymoney/widgets/kmm_widgets_autogen/EWIEGA46WW/moc_kmymoneyviewbase.cpp:186
#16 0x000056374906645a in KInvestmentView::showEvent(QShowEvent*) (this=0x56374abe1330, event=0x7ffff56082a0) at ./kmymoney/views/kinvestmentview.cpp:97
#17 0x00007f29d2230cf6 in QWidget::event(QEvent*) (this=0x56374abe1330, event=0x7ffff56082a0) at kernel/qwidget.cpp:8664
#18 0x00007f29d21eddc3 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x56374abe1330, e=0x7ffff56082a0) at kernel/qapplication.cpp:3632
#19 0x00007f29d21f6bb8 in QApplication::notify(QObject*, QEvent*) () at kernel/qapplication.cpp:3156
#20 0x00007f29ce5cc76a in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x56374abe1330, event=0x7ffff56082a0) at ../../include/QtCore/5.15.3/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:325
#21 0x00007f29d222d6a7 in QWidgetPrivate::show_helper() (this=this@entry=0x56374abe66e0) at kernel/qwidget.cpp:7814
#22 0x00007f29d2230793 in QWidgetPrivate::setVisible(bool) (this=0x56374abe66e0, visible=<optimized out>) at kernel/qwidget.cpp:8112
#23 0x00007f29d22151d4 in QStackedLayout::setCurrentIndex(int) (this=0x56374ac912d0, index=6) at kernel/qstackedlayout.cpp:323
#24 0x00007f29d221547d in QStackedLayout::setCurrentWidget(QWidget*) (this=0x56374ac912d0, widget=widget@entry=0x56374abe1330) at kernel/qstackedlayout.cpp:378
#25 0x00007f29d23a7bd9 in QStackedWidget::setCurrentWidget(QWidget*) (this=<optimized out>, widget=0x56374abe1330) at widgets/qstackedwidget.cpp:248
#26 0x00007f29d294cbec in KPageViewPrivate::pageSelected(QItemSelection const&, QItemSelection const&) (previous=..., index=..., this=0x56374ac91510) at ./src/kpageview.cpp:251
#27 KPageViewPrivate::pageSelected(QItemSelection const&, QItemSelection const&) (this=0x56374ac91510, index=..., previous=...) at ./src/kpageview.cpp:225
#28 0x00007f29ce60378e in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffff56085f0, r=0x56374aca3550, this=0x56374acca5a0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#29 doActivate<false>(QObject*, int, void**) (sender=0x56374ac04050, signal_index=3, argv=0x7ffff56085f0) at kernel/qobject.cpp:3886
#30 0x00007f29ce5fcb57 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x56374ac04050, m=m@entry=0x7f29ce867120 <QItemSelectionModel::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffff56085f0) at kernel/qobject.cpp:3946
#31 0x00007f29ce57d4d4 in QItemSelectionModel::selectionChanged(QItemSelection const&, QItemSelection const&) (this=this@entry=0x56374ac04050, _t1=..., _t2=...) at .moc/moc_qitemselectionmodel.cpp:475
#32 0x00007f29ce582c2b in QItemSelectionModel::emitSelectionChanged(QItemSelection const&, QItemSelection const&) (this=0x56374ac04050, newSelection=..., oldSelection=...) at itemmodels/qitemselectionmodel.cpp:1942
#33 0x00007f29ce5862e2 in QItemSelectionModel::select(QItemSelection const&, QFlags<QItemSelectionModel::SelectionFlag>) (this=0x56374ac04050, selection=..., command=...) at itemmodels/qitemselectionmodel.cpp:1340
#34 0x00007f29d24a2f24 in QListView::setSelection(QRect const&, QFlags<QItemSelectionModel::SelectionFlag>) (this=<optimized out>, rect=..., command=...) at /usr/include/c++/9/bits/atomic_base.h:413
#35 0x00007f29d246597a in QAbstractItemView::mousePressEvent(QMouseEvent*) () at ../../include/QtCore/../../src/corelib/tools/qsize.h:140
#36 0x00007f29d2230d11 in QWidget::event(QEvent*) (this=this@entry=0x56374aad3ee0, event=event@entry=0x7ffff5609070) at kernel/qwidget.cpp:8642
#37 0x00007f29d22e1092 in QFrame::event(QEvent*) (this=0x56374aad3ee0, e=0x7ffff5609070) at widgets/qframe.cpp:550
#38 0x00007f29d246b972 in QAbstractItemView::viewportEvent(QEvent*) (this=0x56374aad3ee0, event=0x7ffff5609070) at itemviews/qabstractitemview.cpp:1746
#39 0x00007f29ce5cc4d3 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) (event=<optimized out>, receiver=<optimized out>) at kernel/qcoreapplication.cpp:1190
#40 QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) (receiver=receiver@entry=0x56374ac46e30, event=event@entry=0x7ffff5609070) at kernel/qcoreapplication.cpp:1179
#41 0x00007f29d21eddb2 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x56374ac46e30, e=0x7ffff5609070) at kernel/qapplication.cpp:3626
#42 0x00007f29d21f6e77 in QApplication::notify(QObject*, QEvent*) () at kernel/qapplication.cpp:3076
#43 0x00007f29ce5cc76a in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x56374ac46e30, event=0x7ffff5609070) at ../../include/QtCore/5.15.3/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:325
#44 0x00007f29d21f60a7 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) (receiver=0x56374ac46e30, event=0x7ffff5609070, alienWidget=0x56374ac46e30, nativeWidget=0x56374aa0c790, buttonDown=<optimized out>, lastMouseReceiver=..., spontaneous=true, onlyDispatchEnterLeave=false) at kernel/qapplication.cpp:2614
#45 0x00007f29d224bf44 in QWidgetWindow::handleMouseEvent(QMouseEvent*) () at /usr/include/c++/9/bits/atomic_base.h:413
#46 0x00007f29d224f264 in QWidgetWindow::event(QEvent*) (this=0x56374aceba50, event=0x7ffff56094f0) at kernel/qwidgetwindow.cpp:300
#47 0x00007f29d21eddc3 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x56374aceba50, e=0x7ffff56094f0) at kernel/qapplication.cpp:3632
#48 0x00007f29d21f6bb8 in QApplication::notify(QObject*, QEvent*) () at kernel/qapplication.cpp:3156
#49 0x00007f29ce5cc76a in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x56374aceba50, event=0x7ffff56094f0) at ../../include/QtCore/5.15.3/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:325
#50 0x00007f29cec204e8 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at kernel/qguiapplication.cpp:2282
#51 0x00007f29cec21b55 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) (e=0x56374bcc4210) at kernel/qguiapplication.cpp:2002
#52 0x00007f29cebf97ac in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) (flags=...) at kernel/qwindowsysteminterface.cpp:1169
#53 0x00007f29ca965554 in  () at /usr/lib/x86_64-linux-gnu/libQt5WaylandClient.so.5
#54 0x00007f29cb46217d in g_main_context_dispatch () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#55 0x00007f29cb462400 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#56 0x00007f29cb4624a3 in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#57 0x00007f29ce626fc2 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x56374a7a00b0, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#58 0x00007f29ce5cb26b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffff5609890, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#59 0x00007f29ce5d3424 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#60 0x0000563748fdb959 in runKMyMoney(std::unique_ptr<QSplashScreen, std::default_delete<QSplashScreen> >, QUrl const&, bool, QApplication&) (splash=std::unique_ptr<QSplashScreen> = {...}, file=..., noFile=<optimized out>, a=...) at ./kmymoney/main.cpp:376
#61 0x0000563748fd9375 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/include/c++/9/bits/move.h:74
[Inferior 1 (process 4916) detached]

Possible duplicates by query: bug 321510, bug 305663, bug 242648, bug 207759, bug 204465.

Reported using DrKonqi
This report was filed against 'kde' because the product 'kmymoney4' could not be located in Bugzilla. Add it to drkonqi's mappings file!
Comment 1 Paul Worrall 2021-08-31 08:26:14 UTC
Also reproducible on current v5.1.80 under KDE Neon Unstable
Comment 2 Paul Worrall 2022-05-19 07:13:10 UTC
Also crashes after:
1. Configure Toolbar
2. Run Reconcile Wizard

Application: KMyMoney (kmymoney), signal: Segmentation fault

[New LWP 5555]
[New LWP 5560]
[New LWP 5561]
[New LWP 5563]
[New LWP 5564]
[New LWP 5565]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007ff2c4ec299f in __GI___poll (fds=0x7fff887f3138, nfds=1, timeout=1000) at ../sysdeps/unix/sysv/linux/poll.c:29
__preamble__
[Current thread is 1 (Thread 0x7ff2c9be4ec0 (LWP 5493))]

Thread 7 (Thread 0x7ff256bfe700 (LWP 5565)):
#0  0x00007ff2c25d825d in g_source_ref () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007ff2c25d8328 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007ff2c25d9cbf in g_main_context_check () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007ff2c25da312 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007ff2c25da4a3 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007ff2c56ef65b in QEventDispatcherGlib::processEvents (this=0x7ff248000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#6  0x00007ff2c569387b in QEventLoop::exec (this=this@entry=0x7ff256bfdbe0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#7  0x00007ff2c54ad442 in QThread::exec (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#8  0x00007ff2c54ae623 in QThreadPrivate::start (arg=0x55a3b44aee60) at thread/qthread_unix.cpp:331
#9  0x00007ff2c3890609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#10 0x00007ff2c4ecf133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7ff2573ff700 (LWP 5564)):
#0  0x00007ff2c4ec299f in __GI___poll (fds=0x7ff250004e60, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007ff2c25da36e in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007ff2c25da4a3 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007ff2c56ef65b in QEventDispatcherGlib::processEvents (this=0x7ff250000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007ff2c569387b in QEventLoop::exec (this=this@entry=0x7ff2573febe0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#5  0x00007ff2c54ad442 in QThread::exec (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#6  0x00007ff2c54ae623 in QThreadPrivate::start (arg=0x55a3b4472b50) at thread/qthread_unix.cpp:331
#7  0x00007ff2c3890609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#8  0x00007ff2c4ecf133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7ff29d80f700 (LWP 5563)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x7ff2c91319b4) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55a3b473bcd0, cond=0x7ff2c9131988) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x7ff2c9131988, mutex=0x55a3b473bcd0) at pthread_cond_wait.c:647
#3  0x00007ff2c51e8e30 in std::condition_variable::wait(std::unique_lock<std::mutex>&) () from /lib/x86_64-linux-gnu/libstdc++.so.6
#4  0x00007ff2c86c2d01 in ?? () from /lib/x86_64-linux-gnu/libQt5WebKit.so.5
#5  0x00007ff2c86c2e1f in ?? () from /lib/x86_64-linux-gnu/libQt5WebKit.so.5
#6  0x00007ff2c51eede4 in ?? () from /lib/x86_64-linux-gnu/libstdc++.so.6
#7  0x00007ff2c3890609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#8  0x00007ff2c4ecf133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7ff29e847700 (LWP 5561)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55a3b44e4968) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55a3b44e4918, cond=0x55a3b44e4940) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x55a3b44e4940, mutex=0x55a3b44e4918) at pthread_cond_wait.c:647
#3  0x00007ff2b4c1d5eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#4  0x00007ff2b4c1d1eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#5  0x00007ff2c3890609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007ff2c4ecf133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7ff2b49ef700 (LWP 5560)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55a3b45f8eec) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55a3b45f8e98, cond=0x55a3b45f8ec0) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x55a3b45f8ec0, mutex=0x55a3b45f8e98) at pthread_cond_wait.c:647
#3  0x00007ff2b4c1d5eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#4  0x00007ff2b4c1d1eb in ?? () from /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#5  0x00007ff2c3890609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007ff2c4ecf133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7ff2bd767700 (LWP 5555)):
#0  0x00007ff2c4ec299f in __GI___poll (fds=0x7ff2b0013f50, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007ff2c25da36e in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007ff2c25da4a3 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007ff2c56ef65b in QEventDispatcherGlib::processEvents (this=0x7ff2b0000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007ff2c569387b in QEventLoop::exec (this=this@entry=0x7ff2bd766bb0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#5  0x00007ff2c54ad442 in QThread::exec (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#6  0x00007ff2c5950f4b in ?? () from /lib/x86_64-linux-gnu/libQt5DBus.so.5
#7  0x00007ff2c54ae623 in QThreadPrivate::start (arg=0x7ff2c59d4d80) at thread/qthread_unix.cpp:331
#8  0x00007ff2c3890609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#9  0x00007ff2c4ecf133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7ff2c9be4ec0 (LWP 5493)):
[KCrash Handler]
#4  0x00007ff2c92e1c35 in QWidget::testAttribute_helper (this=0x55a3b47b9ec0, attribute=attribute@entry=Qt::WA_ForceDisabled) at kernel/qwidget.cpp:11144
#5  0x00007ff2c92ea040 in QWidget::testAttribute (attribute=Qt::WA_ForceDisabled, this=0x55a3b47b9ec0) at ../../include/QtWidgets/../../src/widgets/kernel/qwidget.h:884
#6  QWidget::setAttribute (this=0x55a3b47b9ec0, attribute=attribute@entry=Qt::WA_ForceDisabled, on=false) at kernel/qwidget.cpp:10926
#7  0x00007ff2c92f3932 in QWidget::setEnabled (this=<optimized out>, enable=enable@entry=true) at kernel/qwidget.cpp:3217
#8  0x000055a3b309da73 in KGlobalLedgerView::updateActions (this=0x55a3b47e5fc0, obj=...) at ./kmymoney/views/kgloballedgerview.cpp:227
#9  0x000055a3b30eb78a in KMyMoneyView::slotObjectSelected (this=0x55a3b47be720, obj=...) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qarraydata.h:236
#10 0x000055a3b30ee3ed in KMyMoneyView::slotSelectByObject (this=0x55a3b47be720, obj=..., intent=<optimized out>) at ./kmymoney/views/kmymoneyview.cpp:674
#11 0x00007ff2c56cbdfe in QtPrivate::QSlotObjectBase::call (a=0x7fff887f4060, r=0x55a3b47be720, this=0x55a3b48efc70) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#12 doActivate<false> (sender=0x55a3b47e5fc0, signal_index=7, argv=0x7fff887f4060) at kernel/qobject.cpp:3886
#13 0x00007ff2c56c51c7 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7ff2ca819d00 <KMyMoneyViewBase::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fff887f4060) at kernel/qobject.cpp:3946
#14 0x00007ff2ca7b55a7 in KMyMoneyViewBase::selectByObject (this=<optimized out>, _t1=..., _t2=<optimized out>) at ./obj-x86_64-linux-gnu/kmymoney/widgets/kmm_widgets_autogen/EWIEGA46WW/moc_kmymoneyviewbase.cpp:172
#15 0x000055a3b30a36e4 in KGlobalLedgerView::slotSelectAccount (this=0x55a3b47e5fc0, id=..., transactionId=...) at ./kmymoney/views/kgloballedgerview.cpp:741
#16 0x000055a3b30a46e1 in KGlobalLedgerView::slotSelectAccount (this=<optimized out>, id=...) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qarraydata.h:257
#17 0x000055a3b30a488c in KGlobalLedgerView::slotSetReconcileAccount (this=0x55a3b47e5fc0, acc=..., reconciliationDate=..., endingBalance=...) at ./kmymoney/views/kgloballedgerview.cpp:489
#18 0x000055a3b30a684b in KGlobalLedgerView::slotContinueReconciliation (this=0x55a3b47e5fc0) at ./kmymoney/views/kgloballedgerview.cpp:592
#19 0x000055a3b30ee3bc in KMyMoneyView::slotSelectByObject (this=0x55a3b47be720, obj=..., intent=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qrefcount.h:102
#20 0x00007ff2c56cbdfe in QtPrivate::QSlotObjectBase::call (a=0x7fff887f44d0, r=0x55a3b47be720, this=0x55a3b488ec70) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#21 doActivate<false> (sender=0x55a3b48f7380, signal_index=7, argv=0x7fff887f44d0) at kernel/qobject.cpp:3886
#22 0x00007ff2c56c51c7 in QMetaObject::activate (sender=sender@entry=0x55a3b48f7380, m=m@entry=0x7ff2ca819d00 <KMyMoneyViewBase::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fff887f44d0) at kernel/qobject.cpp:3946
#23 0x00007ff2ca7b55a7 in KMyMoneyViewBase::selectByObject (this=this@entry=0x55a3b48f7380, _t1=..., _t2=<optimized out>, _t2@entry=eView::Intent::FinishEnteringOverdueScheduledTransactions) at ./obj-x86_64-linux-gnu/kmymoney/widgets/kmm_widgets_autogen/EWIEGA46WW/moc_kmymoneyviewbase.cpp:172
#24 0x000055a3b310395b in KScheduledView::slotEnterOverdueSchedules (this=0x55a3b48f7380, acc=...) at ./kmymoney/views/kscheduledview.cpp:230
#25 0x000055a3b30ee5b6 in KMyMoneyView::slotSelectByObject (this=0x55a3b47be720, obj=..., intent=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qrefcount.h:102
#26 0x00007ff2c56cbdfe in QtPrivate::QSlotObjectBase::call (a=0x7fff887f4710, r=0x55a3b47be720, this=0x55a3b48efc70) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#27 doActivate<false> (sender=0x55a3b47e5fc0, signal_index=7, argv=0x7fff887f4710) at kernel/qobject.cpp:3886
#28 0x00007ff2c56c51c7 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7ff2ca819d00 <KMyMoneyViewBase::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fff887f4710) at kernel/qobject.cpp:3946
#29 0x00007ff2ca7b55a7 in KMyMoneyViewBase::selectByObject (this=<optimized out>, _t1=..., _t2=<optimized out>) at ./obj-x86_64-linux-gnu/kmymoney/widgets/kmm_widgets_autogen/EWIEGA46WW/moc_kmymoneyviewbase.cpp:172
#30 0x000055a3b309c1d3 in KGlobalLedgerView::slotStartReconciliation (this=0x55a3b47e5fc0) at ./kmymoney/views/kgloballedgerview.cpp:1954
#31 0x00007ff2c56cbdfe in QtPrivate::QSlotObjectBase::call (a=0x7fff887f4870, r=0x55a3b47e5fc0, this=0x55a3b4720dd0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#32 doActivate<false> (sender=0x55a3b442f920, signal_index=4, argv=0x7fff887f4870) at kernel/qobject.cpp:3886
#33 0x00007ff2c56c51c7 in QMetaObject::activate (sender=sender@entry=0x55a3b442f920, m=m@entry=0x7ff2c97c91c0 <QAction::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7fff887f4870) at kernel/qobject.cpp:3946
#34 0x00007ff2c92af8e6 in QAction::triggered (this=this@entry=0x55a3b442f920, _t1=<optimized out>) at .moc/moc_qaction.cpp:376
#35 0x00007ff2c92b1fb8 in QAction::activate (this=0x55a3b442f920, event=<optimized out>) at kernel/qaction.cpp:1161
#36 0x00007ff2c93afa90 in QAbstractButtonPrivate::click (this=0x55a3bc6df080) at widgets/qabstractbutton.cpp:398
#37 0x00007ff2c93afcb5 in QAbstractButton::mouseReleaseEvent (this=0x55a3bc7e4280, e=0x7fff887f4e10) at widgets/qabstractbutton.cpp:1044
#38 0x00007ff2c94a747e in QToolButton::mouseReleaseEvent (this=<optimized out>, e=<optimized out>) at widgets/qtoolbutton.cpp:622
#39 0x00007ff2c92f8d76 in QWidget::event (this=0x55a3bc7e4280, event=0x7fff887f4e10) at kernel/qwidget.cpp:8677
#40 0x00007ff2c93b0ee3 in QAbstractButton::event (this=this@entry=0x55a3bc7e4280, e=e@entry=0x7fff887f4e10) at widgets/qabstractbutton.cpp:1001
#41 0x00007ff2c94a7528 in QToolButton::event (this=0x55a3bc7e4280, event=0x7fff887f4e10) at widgets/qtoolbutton.cpp:1012
#42 0x00007ff2c92b5dc3 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x55a3bc7e4280, e=0x7fff887f4e10) at kernel/qapplication.cpp:3637
#43 0x00007ff2c92bedc7 in QApplication::notify(QObject*, QEvent*) () at kernel/qapplication.cpp:3081
#44 0x00007ff2c5694d7a in QCoreApplication::notifyInternal2 (receiver=0x55a3bc7e4280, event=0x7fff887f4e10) at ../../include/QtCore/5.15.3/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:332
#45 0x00007ff2c92be0c7 in QApplicationPrivate::sendMouseEvent (receiver=receiver@entry=0x55a3bc7e4280, event=event@entry=0x7fff887f4e10, alienWidget=alienWidget@entry=0x55a3bc7e4280, nativeWidget=0x7ff2b000c7e0, buttonDown=<optimized out>, lastMouseReceiver=..., spontaneous=true, onlyDispatchEnterLeave=false) at kernel/qapplication.cpp:2619
#46 0x00007ff2c9313f64 in QWidgetWindow::handleMouseEvent (this=0x55a3b4899d30, event=0x7fff887f5290) at /usr/include/c++/9/bits/atomic_base.h:413
#47 0x00007ff2c9317284 in QWidgetWindow::event (event=0x7fff887f5290, this=0x55a3b4899d30) at kernel/qwidgetwindow.cpp:300
#48 QWidgetWindow::event (this=0x55a3b4899d30, event=0x7fff887f5290) at kernel/qwidgetwindow.cpp:239
#49 0x00007ff2c92b5dc3 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x55a3b4899d30, e=0x7fff887f5290) at kernel/qapplication.cpp:3637
#50 0x00007ff2c92bebd8 in QApplication::notify(QObject*, QEvent*) () at kernel/qapplication.cpp:3161
#51 0x00007ff2c5694d7a in QCoreApplication::notifyInternal2 (receiver=0x55a3b4899d30, event=0x7fff887f5290) at ../../include/QtCore/5.15.3/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:332
#52 0x00007ff2c5ce8578 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at kernel/qguiapplication.cpp:2282
#53 0x00007ff2c5ce9be5 in QGuiApplicationPrivate::processWindowSystemEvent (e=0x55a3b848f770) at kernel/qguiapplication.cpp:2002
#54 0x00007ff2c5cc17bc in QWindowSystemInterface::sendWindowSystemEvents (flags=flags@entry=...) at kernel/qwindowsysteminterface.cpp:1169
#55 0x00007ff2bed101ce in xcbSourceDispatch (source=<optimized out>) at qxcbeventdispatcher.cpp:105
#56 0x00007ff2c25da17d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#57 0x00007ff2c25da400 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#58 0x00007ff2c25da4a3 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#59 0x00007ff2c56ef642 in QEventDispatcherGlib::processEvents (this=0x55a3b437e910, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#60 0x00007ff2c569387b in QEventLoop::exec (this=this@entry=0x7fff887f5630, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#61 0x00007ff2c569ba24 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#62 0x000055a3b3054959 in runKMyMoney (splash=std::unique_ptr<class QSplashScreen> = {...}, file=..., noFile=<optimized out>, a=...) at ./kmymoney/main.cpp:376
#63 0x000055a3b3052375 in main (argc=<optimized out>, argv=<optimized out>) at /usr/include/c++/9/bits/move.h:74
[Inferior 1 (process 5493) detached]
Comment 3 Paul Worrall 2022-08-27 15:06:38 UTC
Still present in 5.1.80 (from KDE Neon Unstable repos)

Easy to reproduce.
Comment 4 Jack 2022-08-27 15:44:38 UTC
I just reproduced the crash on
- 5.1.2 from Artix Linux
- Appimage build 179 (the most recent successful build.)
- git head master kmymoney 5.1.80-1db929625f on Gentoo
The toolbar change seems to be saved before the crash.
Comment 5 Thomas Baumgart 2022-08-28 14:29:41 UTC
> Still present in 5.1.80 (from KDE Neon Unstable repos)
>
> Easy to reproduce.

... but somewhat hard to fix. I expect it has something to do with the way we make use of the KXmlGui stuff and don't play it right at some point. I took already a few attempts but never understood how this stuff works. BTW, I have seen this in Version 4.x already.

Workaround: restart KMyMoney because the setting changes made it to permanent storage and will be effective after the restart :)
Comment 6 Nico Kruber 2022-12-30 10:53:20 UTC
Created attachment 154898 [details]
New crash information added by DrKonqi

kmymoney (5.1.3) using Qt 5.15.7

Similar to the original post, I removed two icons from the menu bar while I was in the ledger view. Then I filtered it for some string and clicked on one of the transactions in the view which is when kmymoney crashed.

-- Backtrace (Reduced):
#4  QWidgetPrivate::setEnabled_helper (this=0x55816ed3ee00, enable=false) at kernel/qwidget.h:883
#5  0x00007f4455fe17df in QWidget::setEnabled (this=<optimized out>, enable=enable@entry=false) at kernel/qwidget.cpp:3227
#6  0x00005581673aea1e in KGlobalLedgerView::updateLedgerActionsInternal (this=0x558168f7c860) at /usr/src/debug/kmymoney-5.1.3/kmymoney/views/kgloballedgerview.cpp:294
#7  0x00005581673c253e in KGlobalLedgerView::updateLedgerActions (list=..., this=0x558168f7c860) at /usr/src/debug/kmymoney-5.1.3/kmymoney/views/kgloballedgerview.cpp:272
#8  KGlobalLedgerView::slotTransactionsSelected (this=0x558168f7c860, list=...) at /usr/src/debug/kmymoney-5.1.3/kmymoney/views/kgloballedgerview.cpp:2148
Comment 7 Jack 2023-09-08 18:33:52 UTC
It seems to be triggered by adding  Show ... entry to the toolbar (select one of the main Views) and not other configuration changes.  If you do that, and close KMM, when you restart, that tool button is not present, but if you Configure Toolbars... it is shown there.  However, any change which makes it actually show up on the toolbar (change text, change order) does seem to enable the crash, which can be triggered by almost any action, not just selecting a different view.  So, I wonder if there is a difference in how those Show ... actions differ from other ones.
Comment 8 Ralf Habacker 2024-08-06 13:42:52 UTC
(In reply to Nico Kruber from comment #6)

> -- Backtrace (Reduced):
... 
> #5  0x00007f4455fe17df in QWidget::setEnabled (this=<optimized out>,
> enable=enable@entry=false) at kernel/qwidget.cpp:3227
> #6  0x00005581673aea1e in KGlobalLedgerView::updateLedgerActionsInternal
> (this=0x558168f7c860) at
> /usr/src/debug/kmymoney-5.1.3/kmymoney/views/kgloballedgerview.cpp:294

At the mentioned source code location there is:

    pMenus[Menu::MoveTransaction]->setEnabled(false);
    pMenus[Menu::MarkTransaction]->setEnabled(false);
    pMenus[Menu::MarkTransactionContext]->setEnabled(false);

which leads me to believe that the pMenus entries mentioned do not have to be set or zero, which leads to the crash. A check beforehand would avoid the problem. The fact that the menu entries are not present suggests that there may be a problem with the order of initialization. 

In the master branch, the corresponding part has been massively rewritten, so that this problem probably does not occur there.
Comment 9 Ralf Habacker 2024-08-06 13:53:03 UTC
*** Bug 451583 has been marked as a duplicate of this bug. ***
Comment 10 Thomas Baumgart 2024-08-12 11:36:16 UTC
Git commit 9552a63ea5e733ad2333a60344e74a2e303d6395 by Thomas Baumgart.
Committed on 12/08/2024 at 09:04.
Pushed by tbaumgart into branch 'master'.

Prevent crashes when changing toolbars
FIXED-IN: 5.2

M  +27   -1    kmymoney/kmymoney.cpp
M  +1    -0    kmymoney/views/kmymoneyview.cpp

https://invent.kde.org/office/kmymoney/-/commit/9552a63ea5e733ad2333a60344e74a2e303d6395