Bug 474636 - Gwenview crashes on close
Summary: Gwenview crashes on close
Status: RESOLVED FIXED
Alias: None
Product: gwenview
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Gwenview Bugs
URL:
Keywords: drkonqi, qt6
Depends on:
Blocks:
 
Reported: 2023-09-17 22:48 UTC by Nicolas Fella
Modified: 2023-09-27 08:58 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nicolas Fella 2023-09-17 22:48:36 UTC
Application: gwenview (23.11.70)
 (Compiled from sources)
Qt Version: 6.6.1
Frameworks Version: 5.240.0
Operating System: Linux 6.4.15-200.fc38.x86_64 x86_64
Windowing System: Wayland
Distribution: Fedora Linux 38 (KDE Plasma)
DrKonqi: 5.27.80 [KCrashBackend]

-- Information about the crash:
- Open Gwenview
- Go to a folder with pictures
- Close Gwenview

The crash can be reproduced every time.

-- Backtrace:
Application: Gwenview (gwenview), signal: Segmentation fault
Content of s_kcrashErrorMessage: std::unique_ptr<char []> = {get() = 0x0}
[KCrash Handler]
#5  0x00007fb409fb6e24 in std::__uniq_ptr_impl<KModelIndexProxyMapperPrivate, std::default_delete<KModelIndexProxyMapperPrivate> >::_M_ptr() const (this=0x10) at /usr/include/c++/13/bits/unique_ptr.h:199
#6  std::unique_ptr<KModelIndexProxyMapperPrivate, std::default_delete<KModelIndexProxyMapperPrivate> >::get() const (this=0x10) at /usr/include/c++/13/bits/unique_ptr.h:470
#7  qGetPtrHelper<std::unique_ptr<KModelIndexProxyMapperPrivate, std::default_delete<KModelIndexProxyMapperPrivate> > const>(std::unique_ptr<KModelIndexProxyMapperPrivate, std::default_delete<KModelIndexProxyMapperPrivate> > const&) (ptr=std::unique_ptr<KModelIndexProxyMapperPrivate> = {...}) at /home/nico/kde/usr/include/QtCore/qtclasshelpermacros.h:79
#8  KModelIndexProxyMapper::d_func() const (this=0x0) at /home/nico/kde/src/kitemmodels/src/core/kmodelindexproxymapper.h:119
#9  KModelIndexProxyMapper::mapSelectionLeftToRight(QItemSelection const&) const (this=0x0, selection=...) at /home/nico/kde/src/kitemmodels/src/core/kmodelindexproxymapper.cpp:190
#10 0x00007fb409fb62d2 in KLinkItemSelectionModel::select(QItemSelection const&, QFlags<QItemSelectionModel::SelectionFlag>) (this=<optimized out>, selection=<optimized out>, command=...) at /home/nico/kde/src/kitemmodels/src/core/klinkitemselectionmodel.cpp:154
#11 0x00007fb406ba3494 in QItemSelectionModel::clearSelection() (this=this@entry=0x1bda8b0) at /home/nico/workspace/qt6/qtbase/src/corelib/itemmodels/qitemselectionmodel.cpp:1375
#12 0x00007fb406ba45eb in QItemSelectionModel::clear() (this=0x1bda8b0) at /home/nico/workspace/qt6/qtbase/src/corelib/itemmodels/qitemselectionmodel.cpp:1337
#13 QItemSelectionModel::reset() (this=0x1bda8b0) at /home/nico/workspace/qt6/qtbase/src/corelib/itemmodels/qitemselectionmodel.cpp:1362
#14 QItemSelectionModelPrivate::disconnectModel() (this=0x1c03d40) at /home/nico/workspace/qt6/qtbase/src/corelib/itemmodels/qitemselectionmodel.cpp:601
#15 QItemSelectionModelPrivate::modelDestroyed() (this=0x1c03d40) at /home/nico/workspace/qt6/qtbase/src/corelib/itemmodels/qitemselectionmodel.cpp:1090
#16 0x00007fb4069b5e83 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7fff246084c0, r=0x1bda8b0, this=0x1ba3af0) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:433
#17 doActivate<false>(QObject*, int, void**) (sender=0x19dfde0, signal_index=0, argv=0x7fff246084c0) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:4021
#18 0x00007fb4069adbcf in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x19dfde0, m=m@entry=0x7fb406e05060 <QObject::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fff246084c0) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:4081
#19 0x00007fb4069adc6f in QObject::destroyed(QObject*) (this=this@entry=0x19dfde0, _t1=<optimized out>, _t1@entry=0x19dfde0) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/moc_qobject.cpp:272
#20 0x00007fb4069b2ef8 in QObject::~QObject() (this=0x19dfde0, __in_chrg=<optimized out>) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:1061
#21 0x00007fb409cd4069 in Gwenview::DocumentOnlyProxyModel::~DocumentOnlyProxyModel() (this=0x19dfde0, __in_chrg=<optimized out>) at /home/nico/kde/src/gwenview/lib/documentonlyproxymodel.cpp:47
#22 0x00007fb4069ae705 in QObjectPrivate::deleteChildren() (this=this@entry=0x17a9070) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:2206
#23 0x00007fb407dcde78 in QWidget::~QWidget() (this=this@entry=0x19d12e0, __in_chrg=<optimized out>) at /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:1537
#24 0x00007fb407f0253d in QMainWindow::~QMainWindow() (this=this@entry=0x19d12e0, __in_chrg=<optimized out>) at /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qmainwindow.cpp:340
#25 0x00007fb409631361 in KMainWindow::~KMainWindow() (this=this@entry=0x19d12e0, __in_chrg=<optimized out>) at /home/nico/kde/src/kxmlgui/src/kmainwindow.cpp:436
#26 0x00007fb4096735cb in KXmlGuiWindow::~KXmlGuiWindow() (this=this@entry=0x19d12e0, __vtt_parm=__vtt_parm@entry=0x4ade80 <VTT for Gwenview::MainWindow+8>, __in_chrg=<optimized out>) at /home/nico/kde/src/kxmlgui/src/kxmlguiwindow.cpp:216
#27 0x000000000046775a in Gwenview::MainWindow::~MainWindow() (this=0x19d12e0, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at /home/nico/kde/src/gwenview/app/mainwindow.cpp:1102
#28 0x0000000000467849 in Gwenview::MainWindow::~MainWindow() (this=0x19d12e0, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at /home/nico/kde/src/gwenview/app/mainwindow.cpp:1102
#29 0x00007fb4069a6608 in QObject::event(QEvent*) (this=this@entry=0x19d12e0, e=e@entry=0x28b1510) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:1424
#30 0x00007fb407dd18f9 in QWidget::event(QEvent*) (this=this@entry=0x19d12e0, event=event@entry=0x28b1510) at /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qwidget.cpp:9427
#31 0x00007fb407f03d16 in QMainWindow::event(QEvent*) (this=this@entry=0x19d12e0, event=event@entry=0x28b1510) at /home/nico/workspace/qt6/qtbase/src/widgets/widgets/qmainwindow.cpp:1321
#32 0x00007fb409631d2a in KMainWindow::event(QEvent*) (this=this@entry=0x19d12e0, ev=ev@entry=0x28b1510) at /home/nico/kde/src/kxmlgui/src/kmainwindow.cpp:911
#33 0x00007fb409676537 in KXmlGuiWindow::event(QEvent*) (this=0x19d12e0, ev=0x28b1510) at /home/nico/kde/src/kxmlgui/src/kxmlguiwindow.cpp:220
#34 0x00007fb407d7e951 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x19d12e0, e=0x28b1510) at /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qapplication.cpp:3290
#35 0x00007fb4069599f8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x19d12e0, event=0x28b1510) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1119
#36 0x00007fb406959b79 in QCoreApplication::sendEvent(QObject*, QEvent*) (receiver=<optimized out>, event=<optimized out>) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1537
#37 0x00007fb40695d297 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x1752580) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1899
#38 0x00007fb40695d5a8 in QCoreApplication::sendPostedEvents(QObject*, int) (receiver=<optimized out>, event_type=<optimized out>) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1758
#39 0x00007fb406bf7543 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x17bf5e0) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243
#40 0x00007fb4055dc4fc in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#41 0x00007fb40563a6b8 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#42 0x00007fb4055d9b83 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#43 0x00007fb406bf6f7c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x1754820, flags=...) at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393
#44 0x00007fb4069655ab in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fff24608af0, flags=..., flags@entry=...) at /home/nico/workspace/qt6/qtbase/src/corelib/global/qflags.h:34
#45 0x00007fb406961fb2 in QCoreApplication::exec() () at /home/nico/workspace/qt6/qtbase/src/corelib/global/qflags.h:74
#46 0x00007fb4073b033c in QGuiApplication::exec() () at /home/nico/workspace/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1925
#47 0x00007fb407d7e8c5 in QApplication::exec() () at /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qapplication.cpp:2569
#48 0x0000000000439955 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /home/nico/kde/src/gwenview/app/main.cpp:213
[Inferior 1 (process 65430) detached]

Reported using DrKonqi
Comment 1 Bug Janitor Service 2023-09-25 08:19:43 UTC
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kitemmodels/-/merge_requests/83
Comment 2 Méven Car 2023-09-27 08:58:03 UTC
Fixed upstream in Qt 6 commit ae8e356c5152cc62aef55edf50e41125c500cf44