Application: dolphin (21.11.70) Qt Version: 5.15.3 Frameworks Version: 5.86.0 Operating System: Linux 5.11.0-27-generic x86_64 Windowing System: Wayland Distribution: KDE neon Unstable Edition DrKonqi: 5.22.80 [CoredumpBackend] -- Information about the crash: - What I was doing when the application crashed: I can reproduce this crash on both Arch Linux (with Dolphin 21.08.1) and neon unstable. copy a file to another folder, press ctrl+z, click on "Delete" button of the dialog to confirm permanent deletion. Dolphin crashes. The crash can be reproduced every time. -- Backtrace: Application: Dolphin (dolphin), signal: Segmentation fault Content of s_kcrashErrorMessage: std::unique_ptr<char []> = {get() = 0x0} [New LWP 2899] [New LWP 2910] [New LWP 2901] [New LWP 2903] [New LWP 2905] [New LWP 2908] [New LWP 2906] [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Core was generated by `/usr/bin/dolphin'. Program terminated with signal SIGSEGV, Segmentation fault. #0 __GI_raise (sig=sig@entry=11) at ../sysdeps/unix/sysv/linux/raise.c:50 [Current thread is 1 (Thread 0x7fe662a709c0 (LWP 2899))] __preamble__ [Current thread is 1 (Thread 0x7fe662a709c0 (LWP 2899))] Thread 7 (Thread 0x7fe659e39700 (LWP 2906)): #0 futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55ffee924b78) at ../sysdeps/nptl/futex-internal.h:183 #1 __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55ffee924b28, cond=0x55ffee924b50) at pthread_cond_wait.c:508 #2 __pthread_cond_wait (cond=0x55ffee924b50, mutex=0x55ffee924b28) at pthread_cond_wait.c:647 #3 0x00007fe65b14aa4b in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so #4 0x00007fe65b14a64b in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so #5 0x00007fe665fc4609 in start_thread (arg=<optimized out>) at pthread_create.c:477 #6 0x00007fe6674c0293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 6 (Thread 0x7fe659638700 (LWP 2908)): #0 futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55ffee924b78) at ../sysdeps/nptl/futex-internal.h:183 #1 __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55ffee924b28, cond=0x55ffee924b50) at pthread_cond_wait.c:508 #2 __pthread_cond_wait (cond=0x55ffee924b50, mutex=0x55ffee924b28) at pthread_cond_wait.c:647 #3 0x00007fe65b14aa4b in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so #4 0x00007fe65b14a64b in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so #5 0x00007fe665fc4609 in start_thread (arg=<optimized out>) at pthread_create.c:477 #6 0x00007fe6674c0293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 5 (Thread 0x7fe65a63a700 (LWP 2905)): #0 futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55ffee924b78) at ../sysdeps/nptl/futex-internal.h:183 #1 __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55ffee924b28, cond=0x55ffee924b50) at pthread_cond_wait.c:508 #2 __pthread_cond_wait (cond=0x55ffee924b50, mutex=0x55ffee924b28) at pthread_cond_wait.c:647 #3 0x00007fe65b14aa4b in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so #4 0x00007fe65b14a64b in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so #5 0x00007fe665fc4609 in start_thread (arg=<optimized out>) at pthread_create.c:477 #6 0x00007fe6674c0293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 4 (Thread 0x7fe65ae3b700 (LWP 2903)): #0 futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55ffee924b78) at ../sysdeps/nptl/futex-internal.h:183 #1 __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55ffee924b28, cond=0x55ffee924b50) at pthread_cond_wait.c:508 #2 __pthread_cond_wait (cond=0x55ffee924b50, mutex=0x55ffee924b28) at pthread_cond_wait.c:647 #3 0x00007fe65b14aa4b in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so #4 0x00007fe65b14a64b in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so #5 0x00007fe665fc4609 in start_thread (arg=<optimized out>) at pthread_create.c:477 #6 0x00007fe6674c0293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 3 (Thread 0x7fe66216d700 (LWP 2901)): #0 0x00007fe6674b3aff in __GI___poll (fds=0x7fe65c005240, nfds=3, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29 #1 0x00007fe66554636e in g_main_context_poll (priority=<optimized out>, n_fds=3, fds=0x7fe65c005240, timeout=<optimized out>, context=0x7fe65c000c20) at ../../../glib/gmain.c:4346 #2 g_main_context_iterate (context=context@entry=0x7fe65c000c20, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4042 #3 0x00007fe6655464a3 in g_main_context_iteration (context=0x7fe65c000c20, may_block=may_block@entry=1) at ../../../glib/gmain.c:4108 #4 0x00007fe667a815d2 in QEventDispatcherGlib::processEvents (this=0x7fe65c000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:423 #5 0x00007fe667a2587b in QEventLoop::exec (this=this@entry=0x7fe66216cbb0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141 #6 0x00007fe66783f292 in QThread::exec (this=this@entry=0x7fe668b5ad80 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121 #7 0x00007fe668ad6f4b in QDBusConnectionManager::run (this=0x7fe668b5ad80 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:179 #8 0x00007fe66784042c in QThreadPrivate::start (arg=0x7fe668b5ad80 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:329 #9 0x00007fe665fc4609 in start_thread (arg=<optimized out>) at pthread_create.c:477 #10 0x00007fe6674c0293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 2 (Thread 0x7fe658e37700 (LWP 2910)): #0 0x00007fe6674b3aff in __GI___poll (fds=0x7fe648004e60, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29 #1 0x00007fe66554636e in g_main_context_poll (priority=<optimized out>, n_fds=1, fds=0x7fe648004e60, timeout=<optimized out>, context=0x7fe648000c20) at ../../../glib/gmain.c:4346 #2 g_main_context_iterate (context=context@entry=0x7fe648000c20, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4042 #3 0x00007fe6655464a3 in g_main_context_iteration (context=0x7fe648000c20, may_block=may_block@entry=1) at ../../../glib/gmain.c:4108 #4 0x00007fe667a815d2 in QEventDispatcherGlib::processEvents (this=0x7fe648000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:423 #5 0x00007fe667a2587b in QEventLoop::exec (this=this@entry=0x7fe658e36be0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141 #6 0x00007fe66783f292 in QThread::exec (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121 #7 0x00007fe66784042c in QThreadPrivate::start (arg=0x55ffeeea8ff0) at thread/qthread_unix.cpp:329 #8 0x00007fe665fc4609 in start_thread (arg=<optimized out>) at pthread_create.c:477 #9 0x00007fe6674c0293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 1 (Thread 0x7fe662a709c0 (LWP 2899)): [KCrash Handler] #3 0x00007fe66987adda in ?? () from /lib/x86_64-linux-gnu/libKF5KIOWidgets.so.5 #4 0x00007fe6698772cd in ?? () from /lib/x86_64-linux-gnu/libKF5KIOWidgets.so.5 #5 0x00007fe6698774fe in ?? () from /lib/x86_64-linux-gnu/libKF5KIOWidgets.so.5 #6 0x00007fe667a5dd9e in QtPrivate::QSlotObjectBase::call (a=0x7fffc7241cb0, r=0x7fe6699057e0, this=0x55ffef9ac330) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398 #7 doActivate<false> (sender=0x55ffef9ae5f0, signal_index=5, argv=0x7fffc7241cb0) at kernel/qobject.cpp:3886 #8 0x00007fe667a57167 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7fe66967eaa0 <KIO::AskUserActionInterface::staticMetaObject>, local_signal_index=local_signal_index@entry=2, argv=argv@entry=0x7fffc7241cb0) at kernel/qobject.cpp:3946 #9 0x00007fe6694f6565 in KIO::AskUserActionInterface::askUserDeleteResult (this=<optimized out>, _t1=<optimized out>, _t2=..., _t3=<optimized out>, _t4=<optimized out>) at ./obj-x86_64-linux-gnu/src/core/KF5KIOCore_autogen/EWIEGA46WW/moc_askuseractioninterface.cpp:225 #10 0x00007fe669862820 in ?? () from /lib/x86_64-linux-gnu/libKF5KIOWidgets.so.5 #11 0x00007fe667a5dd9e in QtPrivate::QSlotObjectBase::call (a=0x7fffc7241e50, r=0x55ffef9ae5f0, this=0x55ffefaada90) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398 #12 doActivate<false> (sender=0x55ffef99ab10, signal_index=7, argv=0x7fffc7241e50) at kernel/qobject.cpp:3886 #13 0x00007fe667a57167 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7fe668a29840 <QDialog::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fffc7241e50) at kernel/qobject.cpp:3946 #14 0x00007fe66870d302 in QDialog::finished (this=<optimized out>, _t1=<optimized out>) at .moc/moc_qdialog.cpp:230 #15 0x00007fe667a5dd9e in QtPrivate::QSlotObjectBase::call (a=0x7fffc7241f70, r=0x55ffef99ab10, this=0x55ffefaa5ca0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398 #16 doActivate<false> (sender=0x55ffef9a9f70, signal_index=7, argv=0x7fffc7241f70) at kernel/qobject.cpp:3886 #17 0x00007fe667a57167 in QMetaObject::activate (sender=sender@entry=0x55ffef9a9f70, m=m@entry=0x7fe668a227c0 <QDialogButtonBox::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fffc7241f70) at kernel/qobject.cpp:3946 #18 0x00007fe6686a3473 in QDialogButtonBox::clicked (this=this@entry=0x55ffef9a9f70, _t1=<optimized out>, _t1@entry=0x55ffefaa46e0) at .moc/moc_qdialogbuttonbox.cpp:281 #19 0x00007fe6686a3bd9 in QDialogButtonBoxPrivate::_q_handleButtonClicked (this=<optimized out>) at widgets/qdialogbuttonbox.cpp:870 #20 0x00007fe667a5ddd0 in doActivate<false> (sender=0x55ffefaa46e0, signal_index=9, argv=0x7fffc72420c0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:395 #21 0x00007fe667a57167 in QMetaObject::activate (sender=sender@entry=0x55ffefaa46e0, m=m@entry=0x7fe668a19600 <QAbstractButton::staticMetaObject>, local_signal_index=local_signal_index@entry=2, argv=argv@entry=0x7fffc72420c0) at kernel/qobject.cpp:3946 #22 0x00007fe6685fac66 in QAbstractButton::clicked (this=this@entry=0x55ffefaa46e0, _t1=<optimized out>) at .moc/moc_qabstractbutton.cpp:308 #23 0x00007fe6685fae8e in QAbstractButtonPrivate::emitClicked (this=0x55ffef5b6af0) at widgets/qabstractbutton.cpp:415 #24 0x00007fe6685fc363 in QAbstractButtonPrivate::click (this=0x55ffef5b6af0) at widgets/qabstractbutton.cpp:408 #25 0x00007fe6685fc525 in QAbstractButton::mouseReleaseEvent (this=0x55ffefaa46e0, e=0x7fffc7242680) at widgets/qabstractbutton.cpp:1044 #26 0x00007fe668545cf6 in QWidget::event (this=0x55ffefaa46e0, event=0x7fffc7242680) at kernel/qwidget.cpp:8664 #27 0x00007fe6685fd753 in QAbstractButton::event (this=this@entry=0x55ffefaa46e0, e=e@entry=0x7fffc7242680) at widgets/qabstractbutton.cpp:1001 #28 0x00007fe6686a0d43 in QPushButton::event (this=0x55ffefaa46e0, e=0x7fffc7242680) at widgets/qpushbutton.cpp:709 #29 0x00007fe668502dc3 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x55ffefaa46e0, e=0x7fffc7242680) at kernel/qapplication.cpp:3632 #30 0x00007fe66850be77 in QApplication::notify(QObject*, QEvent*) () at kernel/qapplication.cpp:3076 #31 0x00007fe667a26d7a in QCoreApplication::notifyInternal2 (receiver=0x55ffefaa46e0, event=0x7fffc7242680) at ../../include/QtCore/5.15.3/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:325 #32 0x00007fe66850b0a7 in QApplicationPrivate::sendMouseEvent (receiver=receiver@entry=0x55ffefaa46e0, event=event@entry=0x7fffc7242680, alienWidget=alienWidget@entry=0x55ffefaa46e0, nativeWidget=0x55ffef99ab10, buttonDown=<optimized out>, lastMouseReceiver=..., spontaneous=true, onlyDispatchEnterLeave=false) at kernel/qapplication.cpp:2614 #33 0x00007fe668560f44 in QWidgetWindow::handleMouseEvent (this=0x55ffefaadbf0, event=0x7fffc7242b00) at /usr/include/c++/9/bits/atomic_base.h:413 #34 0x00007fe668564264 in QWidgetWindow::event (event=0x7fffc7242b00, this=0x55ffefaadbf0) at kernel/qwidgetwindow.cpp:300 #35 QWidgetWindow::event (this=0x55ffefaadbf0, event=0x7fffc7242b00) at kernel/qwidgetwindow.cpp:239 #36 0x00007fe668502dc3 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x55ffefaadbf0, e=0x7fffc7242b00) at kernel/qapplication.cpp:3632 #37 0x00007fe66850bbb8 in QApplication::notify(QObject*, QEvent*) () at kernel/qapplication.cpp:3156 #38 0x00007fe667a26d7a in QCoreApplication::notifyInternal2 (receiver=0x55ffefaadbf0, event=0x7fffc7242b00) at ../../include/QtCore/5.15.3/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:325 #39 0x00007fe667e0c4e8 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at kernel/qguiapplication.cpp:2282 #40 0x00007fe667e0db55 in QGuiApplicationPrivate::processWindowSystemEvent (e=0x55ffefaa63a0) at kernel/qguiapplication.cpp:2002 #41 0x00007fe667de57ac in QWindowSystemInterface::sendWindowSystemEvents (flags=...) at kernel/qwindowsysteminterface.cpp:1169 #42 0x00007fe665347554 in userEventSourceDispatch(_GSource*, int (*)(void*), void*) () from /lib/x86_64-linux-gnu/libQt5WaylandClient.so.5 #43 0x00007fe66554617d in g_main_dispatch (context=0x55ffee8d7480) at ../../../glib/gmain.c:3309 #44 g_main_context_dispatch (context=context@entry=0x55ffee8d7480) at ../../../glib/gmain.c:3974 #45 0x00007fe665546400 in g_main_context_iterate (context=context@entry=0x55ffee8d7480, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4047 #46 0x00007fe6655464a3 in g_main_context_iteration (context=0x55ffee8d7480, may_block=may_block@entry=1) at ../../../glib/gmain.c:4108 #47 0x00007fe667a815d2 in QEventDispatcherGlib::processEvents (this=0x55ffee8d5fc0, flags=...) at kernel/qeventdispatcher_glib.cpp:423 #48 0x00007fe667a2587b in QEventLoop::exec (this=this@entry=0x7fffc7242ea0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141 #49 0x00007fe667a2da34 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:121 #50 0x000055ffee2a41e3 in main (argc=<optimized out>, argv=<optimized out>) at ./src/main.cpp:230 Possible duplicates by query: bug 442223, bug 442026, bug 441856, bug 441620, bug 441549. Report to https://bugs.kde.org/
Thread 1 "dolphin" received signal SIGSEGV, Segmentation fault. QList<KIO::BasicOperation>::QList (this=this@entry=0x7fffffffc718, l=...) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:856 856 if (!d->ref.ref()) { (gdb) bt #0 QList<KIO::BasicOperation>::QList (this=this@entry=0x7fffffffc718, l=...) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:856 #1 0x00007ffff7bc6237 in QQueue<KIO::BasicOperation>::QQueue (this=0x7fffffffc718) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qqueue.h:49 #2 KIO::UndoCommand::UndoCommand (this=0x7fffffffc710) at /home/meven/kde/src/kio/src/widgets/fileundomanager_p.h:52 #3 QStack<KIO::UndoCommand>::pop (this=0x555555786c30) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qstack.h:62 #4 KIO::FileUndoManagerPrivate::slotPop (this=this@entry=0x555555786c20) at /home/meven/kde/src/kio/src/widgets/fileundomanager.cpp:641 #5 0x00007ffff7bc64fe in KIO::FileUndoManagerPrivate::startUndo (this=0x555555786c20) at /home/meven/kde/src/kio/src/widgets/fileundomanager.cpp:389 #6 0x00007ffff5e7d5c7 in QtPrivate::QSlotObjectBase::call (a=0x7fffffffc900, r=0x7ffff7c48620 <(anonymous namespace)::Q_QGS_globalFileUndoManager::innerFunction()::holder>, this=0x555556456ae0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398 #7 doActivate<false> (sender=0x55555685ac50, signal_index=5, argv=argv@entry=0x7fffffffc900) at kernel/qobject.cpp:3886 #8 0x00007ffff5e76728 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7ffff79fbaa0 <KIO::AskUserActionInterface::staticMetaObject>, local_signal_index=local_signal_index@entry=2, argv=argv@entry=0x7fffffffc900) at kernel/qobject.cpp:3946 #9 0x00007ffff78c3295 in KIO::AskUserActionInterface::askUserDeleteResult (this=<optimized out>, _t1=<optimized out>, _t1@entry=true, _t2=..., _t3=<optimized out>, _t4=<optimized out>) at /home/meven/kde/build/kio/src/core/KF5KIOCore_autogen/EWIEGA46WW/moc_askuseractioninterface.cpp:225 #10 0x00007ffff7bb7270 in operator() (buttonCode=16384, __closure=0x555556ddec50) at /home/meven/kde/src/kio/src/widgets/widgetsaskuseractionhandler.cpp:197 #11 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<int>, void, KIO::WidgetsAskUserActionHandler::askUserDelete(const QList<QUrl>&, KIO::AskUserActionInterface::DeletionType, KIO::AskUserActionInterface::ConfirmationType, QWidget*)::<lambda(int)> >::call (arg=<optimized out>, f=...) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:146
Somehow the startUndo() function is called twice because as if KIO::AskUserActionInterface::askUserDeleteResult was emitted twice with the same arguments even.
The two call to have the exact same backtrace, and are called within ~ 5 ms. allowDelete (QUrl("file:///home/meven/test")) 0 DolphinMainWindow(0x55555578a2a0, name="Dolphin#1") QDateTime(2021-10-01 19:08:19.276 CEST Qt::LocalTime) allowDelete (QUrl("file:///home/meven/test")) 0 DolphinMainWindow(0x55555578a2a0, name="Dolphin#1") QDateTime(2021-10-01 19:08:19.281 CEST Qt::LocalTime)
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kwidgetsaddons/-/merge_requests/101
Git commit 99d8dca607327ebf0b6d2f3cff089207c61d7276 by Méven Car, on behalf of Ahmad Samir. Committed on 03/10/2021 at 05:34. Pushed by ahmadsamir into branch 'master'. KMessageDialog: disconnect default buttonbox signals as we emit done() manually QDialogButtonBox internally creates some default connections, e.g. connects OK clicked() to accepted(); then we emit done(buttoncode), the resultant is that one button press causes two clicked signals to get emitted; which leads some interesting behavoiur, e.g. undo'ing a file copy in dolphin, invokes the askuserdelete dialog, you click deleted and get a crash in KIO, since the code tries to undo the copy twice... FIXED-IN: 5.87 M +6 -0 src/kmessagedialog.cpp https://invent.kde.org/frameworks/kwidgetsaddons/commit/99d8dca607327ebf0b6d2f3cff089207c61d7276