Bug 437539

Summary: Crash on clearing Wastebin
Product: [Applications] dolphin Reporter: Ian <igiwatson>
Component: generalAssignee: Dolphin Bug Assignee <dolphin-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: beder.lopez.c, kfm-devel, nate, omerusta
Priority: NOR Keywords: drkonqi
Version: 20.12.2   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In: 21.04.2
Sentry Crash Report:

Description Ian 2021-05-23 12:11:02 UTC
Application: dolphin (20.12.2)
 (Compiled from sources)
Qt Version: 5.15.2
Frameworks Version: 5.79.0
Operating System: Linux 5.11.21-200.fc33.x86_64 x86_64
Windowing system: X11
Distribution: Fedora 33 (KDE Plasma)

-- Information about the crash:
- What I was doing when the application crashed:

Clicked on Wastebin in 'Places' side panel. Right clicked on 'Empty Wastebin'.
Crash occurred.

-- Backtrace:
Application: Dolphin (dolphin), signal: Segmentation fault

[KCrash Handler]
#4  0x00007f1d90fee71d in QHash<QByteArray, QVariant>::findNode(QByteArray const&, unsigned int) const () from /lib64/libdolphinprivate.so.5
#5  0x00007f1d90feeb03 in KFileItemListWidgetInformant::roleText(QByteArray const&, QHash<QByteArray, QVariant> const&) const () from /lib64/libdolphinprivate.so.5
#6  0x00007f1d9102ce05 in KStandardItemListWidgetInformant::preferredRoleColumnWidth(QByteArray const&, int, KItemListView const*) const () from /lib64/libdolphinprivate.so.5
#7  0x00007f1d9101edeb in KItemListView::preferredColumnWidths(KItemRangeList const&) const () from /lib64/libdolphinprivate.so.5
#8  0x00007f1d91021a1b in KItemListView::updatePreferredColumnWidths(KItemRangeList const&) () from /lib64/libdolphinprivate.so.5
#9  0x00007f1d91021bc2 in KItemListView::updatePreferredColumnWidths() () from /lib64/libdolphinprivate.so.5
#10 0x00007f1d91026580 in KItemListView::slotItemsRemoved(KItemRangeList const&) () from /lib64/libdolphinprivate.so.5
#11 0x00007f1d8f1c5386 in void doActivate<false>(QObject*, int, void**) () from /lib64/libQt5Core.so.5
#12 0x00007f1d90fe20f9 in KItemModelBase::itemsRemoved(KItemRangeList const&) () from /lib64/libdolphinprivate.so.5
#13 0x00007f1d90ffddf9 in KFileItemModel::slotItemsDeleted(KFileItemList const&) () from /lib64/libdolphinprivate.so.5
#14 0x00007f1d8f1c5386 in void doActivate<false>(QObject*, int, void**) () from /lib64/libQt5Core.so.5
#15 0x00007f1d90ad6559 in KCoreDirLister::itemsDeleted(KFileItemList const&) () from /lib64/libKF5KIOCore.so.5
#16 0x00007f1d90adf415 in KCoreDirListerCache::itemsDeleted(QList<KCoreDirLister*> const&, KFileItemList const&) () from /lib64/libKF5KIOCore.so.5
#17 0x00007f1d90ae084c in KCoreDirListerCache::slotUpdateResult(KJob*) () from /lib64/libKF5KIOCore.so.5
#18 0x00007f1d8f1c5386 in void doActivate<false>(QObject*, int, void**) () from /lib64/libQt5Core.so.5
#19 0x00007f1d902e91c0 in KJob::result(KJob*, KJob::QPrivateSignal) () from /lib64/libKF5CoreAddons.so.5
#20 0x00007f1d902ede8b in KJob::finishJob(bool) () from /lib64/libKF5CoreAddons.so.5
#21 0x00007f1d8f1c5386 in void doActivate<false>(QObject*, int, void**) () from /lib64/libQt5Core.so.5
#22 0x00007f1d90a855ed in KIO::SlaveInterface::dispatch(int, QByteArray const&) () from /lib64/libKF5KIOCore.so.5
#23 0x00007f1d90a7e05d in KIO::SlaveInterface::dispatch() () from /lib64/libKF5KIOCore.so.5
#24 0x00007f1d90a877a2 in KIO::Slave::gotInput() () from /lib64/libKF5KIOCore.so.5
#25 0x00007f1d8f1c5386 in void doActivate<false>(QObject*, int, void**) () from /lib64/libQt5Core.so.5
#26 0x00007f1d8f1bdd1e in QObject::event(QEvent*) () from /lib64/libQt5Core.so.5
#27 0x00007f1d8fceeec3 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5
#28 0x00007f1d8f195bd8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib64/libQt5Core.so.5
#29 0x00007f1d8f1988c7 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /lib64/libQt5Core.so.5
#30 0x00007f1d8f1e2c27 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () from /lib64/libQt5Core.so.5
#31 0x00007f1d8d13da9f in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#32 0x00007f1d8d18fa98 in g_main_context_iterate.constprop () from /lib64/libglib-2.0.so.0
#33 0x00007f1d8d13ae73 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#34 0x00007f1d8f1e26f3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#35 0x00007f1d8f19457b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#36 0x00007f1d8f19c1b4 in QCoreApplication::exec() () from /lib64/libQt5Core.so.5
#37 0x00007f1d912d5d5e in kdemain () from /lib64/libkdeinit5_dolphin.so
#38 0x00007f1d910db1e2 in __libc_start_main () from /lib64/libc.so.6
#39 0x0000555e08fff0ae in _start ()
[Inferior 1 (process 1973) detached]

Possible duplicates by query: bug 437061, bug 432443, bug 432346, bug 429854, bug 422282.

Reported using DrKonqi
Comment 1 Ömer Fadıl USTA 2021-05-25 00:08:39 UTC
(gdb) bt
#0  std::__uniq_ptr_impl<KActionCollectionPrivate, std::default_delete<KActionCollectionPrivate> >::_M_ptr (this=0x10)
    at /usr/include/c++/11.1.0/bits/unique_ptr.h:173
#1  0x00007ffff6e965ae in std::unique_ptr<KActionCollectionPrivate, std::default_delete<KActionCollectionPrivate> >::get (this=0x10)
    at /usr/include/c++/11.1.0/bits/unique_ptr.h:422
#2  0x00007ffff6e94d04 in std::unique_ptr<KActionCollectionPrivate, std::default_delete<KActionCollectionPrivate> >::operator-> (this=0x10)
    at /usr/include/c++/11.1.0/bits/unique_ptr.h:416
#3  0x00007ffff6e8f40e in KActionCollection::action (this=0x0, name=...) at /home/kde-dev/kde/src/frameworks/kxmlgui/src/kactioncollection.cpp:138
#4  0x0000555555619539 in ContextMenuSettingsPage::showEvent(QShowEvent*) ()
#5  0x00007ffff5d810be in QWidget::event(QEvent*) () from /usr/lib/libQt5Widgets.so.5
#6  0x00007ffff5d3dd62 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#7  0x00007ffff526a00a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#8  0x00007ffff5d7d8a8 in QWidgetPrivate::show_helper() () from /usr/lib/libQt5Widgets.so.5
#9  0x00007ffff5d80bbd in QWidgetPrivate::setVisible(bool) () from /usr/lib/libQt5Widgets.so.5
#10 0x00007ffff5d64b6e in QStackedLayout::setCurrentIndex(int) () from /usr/lib/libQt5Widgets.so.5
#11 0x00007ffff6b5ddad in KPageViewPrivate::pageSelected (this=0x55555625d950, index=..., previous=...)
    at /home/kde-dev/kde/src/frameworks/kwidgetsaddons/src/kpageview.cpp:251
#12 0x00007ffff6b5cbe4 in operator() (__closure=0x555556277da0, selected=..., deselected=...)
    at /home/kde-dev/kde/src/frameworks/kwidgetsaddons/src/kpageview.cpp:51
#13 0x00007ffff6b5f978 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1>, QtPrivate::List<const QItemSelection&, const QItemSelection&>, void, KPageViewPrivate::rebuildGui()::<lambda(const QItemSelection&, const QItemSelection&)> >::call(struct {...} &, void **) (f=..., arg=0x7fffffffcab0)
    at /usr/include/qt/QtCore/qobjectdefs_impl.h:146
#14 0x00007ffff6b5f8dd in QtPrivate::Functor<KPageViewPrivate::rebuildGui()::<lambda(const QItemSelection&, const QItemSelection&)>, 2>::call<QtPrivate::List<QItemSelection const&, QItemSelection const&>, void>(struct {...} &, void *, void **) (f=..., arg=0x7fffffffcab0)
    at /usr/include/qt/QtCore/qobjectdefs_impl.h:256
#15 0x00007ffff6b5f798 in QtPrivate::QFunctorSlotObject<KPageViewPrivate::rebuildGui()::<lambda(const QItemSelection&, const QItemSelection&)>, 2, QtPrivate::List<const QItemSelection&, const QItemSelection&>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=1, 
    this_=0x555556277d90, r=0x55555611a480, a=0x7fffffffcab0, ret=0x0) at /usr/include/qt/QtCore/qobjectdefs_impl.h:443
#16 0x00007ffff52a13bb in ?? () from /usr/lib/libQt5Core.so.5
#17 0x00007ffff5213aa1 in QItemSelectionModel::selectionChanged(QItemSelection const&, QItemSelection const&) () from /usr/lib/libQt5Core.so.5
#18 0x00007ffff521a9dc in QItemSelectionModel::emitSelectionChanged(QItemSelection const&, QItemSelection const&) () from /usr/lib/libQt5Core.so.5
Comment 2 Bug Janitor Service 2021-05-25 01:57:47 UTC
A possibly relevant merge request was started @ https://invent.kde.org/system/dolphin/-/merge_requests/214
Comment 3 Ömer Fadıl USTA 2021-05-25 04:39:21 UTC
Git commit 879fa9fa7d82a14c934c7a1361b97d39ffd0a08b by Ömer Fadıl Usta.
Committed on 25/05/2021 at 01:49.
Pushed by usta into branch 'master'.

[src/settings/contextmenu/contextmenusettingspage] Fix Crash because of nullptr

M  +7    -5    src/settings/contextmenu/contextmenusettingspage.cpp

https://invent.kde.org/system/dolphin/commit/879fa9fa7d82a14c934c7a1361b97d39ffd0a08b
Comment 4 Ömer Fadıl USTA 2021-05-25 04:41:35 UTC
@Ian : could you recompile and check if the bug fixed or not ?
Comment 5 Nate Graham 2021-05-25 17:11:19 UTC
Fixes it for me!
Comment 6 Nate Graham 2021-05-25 17:12:41 UTC
Git commit b5e276d115c55241b0b193ee184f3bd206da8d33 by Nate Graham, on behalf of Ömer Fadıl Usta.
Committed on 25/05/2021 at 17:12.
Pushed by ngraham into branch 'release/21.04'.

[src/settings/contextmenu/contextmenusettingspage] Fix Crash because of nullptr

(cherry picked from commit 879fa9fa7d82a14c934c7a1361b97d39ffd0a08b)

M  +7    -5    src/settings/contextmenu/contextmenusettingspage.cpp

https://invent.kde.org/system/dolphin/commit/b5e276d115c55241b0b193ee184f3bd206da8d33
Comment 7 David Edmundson 2024-11-01 08:57:52 UTC
*** Bug 474381 has been marked as a duplicate of this bug. ***