https://bugs.kde.org/show_bug.cgi?id=474569
Bug ID: 474569 Summary: Gwenview crashes when the number of images in a directory is too high Classification: Applications Product: gwenview Version: 23.08.0 Platform: openSUSE OS: Linux Status: REPORTED Keywords: drkonqi Severity: crash Priority: NOR Component: general Assignee: gwenview-bugs-n...@kde.org Reporter: fire.eagle...@gmail.com Target Milestone: --- Application: gwenview (23.08.0) Qt Version: 5.15.10 Frameworks Version: 5.110.0 Operating System: Linux 6.5.2-1-default x86_64 Windowing System: Wayland Distribution: "openSUSE Tumbleweed" DrKonqi: 5.27.7 [KCrashBackend] -- Information about the crash: Gwenview crashes when opening a file if there are too many images inside it. It seems related to file size as in some directories it only crashes when opening a png file while others it will crash with either The crash can be reproduced every time. -- Backtrace: Application: Gwenview (gwenview), signal: Aborted [KCrash Handler] #4 0x00007f79a9691e0c in __pthread_kill_implementation () from /lib64/libc.so.6 #5 0x00007f79a963f0e6 in raise () from /lib64/libc.so.6 #6 0x00007f79a96268d7 in abort () from /lib64/libc.so.6 #7 0x00007f79a9aacc17 in ?? () from /lib64/libstdc++.so.6 #8 0x00007f79a9abc23c in ?? () from /lib64/libstdc++.so.6 #9 0x00007f79a9abc2a7 in std::terminate() () from /lib64/libstdc++.so.6 #10 0x00007f79a9abc508 in __cxa_throw () from /lib64/libstdc++.so.6 #11 0x00007f79ab4f621b in ?? () from /lib64/glibc-hwcaps/x86-64-v3/libexiv2.so.0.28.0 #12 0x00007f79ab56eba7 in Exiv2::JpegBase::readMetadata() () from /lib64/glibc-hwcaps/x86-64-v3/libexiv2.so.0.28.0 #13 0x00007f79ac40013d in Gwenview::Exiv2ImageLoader::load(QString const&) () from /lib64/libgwenviewlib.so.5 #14 0x00007f79ac4408cb in ?? () from /lib64/libgwenviewlib.so.5 #15 0x00007f79ac44166c in Gwenview::TimeUtils::dateTimeForFileItem(KFileItem const&, Gwenview::TimeUtils::CachePolicy) () from /lib64/libgwenviewlib.so.5 #16 0x00007f79ac418b65 in Gwenview::SortedDirModel::lessThan(QModelIndex const&, QModelIndex const&) const () from /lib64/libgwenviewlib.so.5 #17 0x00007f79aa0c6922 in QSortFilterProxyModelLessThan::operator() (r2=635, r1=<optimized out>, this=0x7ffc86273240) at itemmodels/qsortfilterproxymodel.cpp:82 #18 __gnu_cxx::__ops::_Iter_comp_iter<QSortFilterProxyModelLessThan>::operator()<int*, int*> (__it2=0x560430ab93e0, __it1=0x560430ab93e4, this=0x7ffc86273240) at /usr/include/c++/13/bits/predefined_ops.h:158 #19 std::__insertion_sort<int*, __gnu_cxx::__ops::_Iter_comp_iter<QSortFilterProxyModelLessThan> > (__first=__first@entry=0x560430ab93e0, __last=__last@entry=0x560430ab93fc, __comp=...) at /usr/include/c++/13/bits/stl_algo.h:1819 #20 0x00007f79aa0c8726 in std::__chunk_insertion_sort<int*, long, __gnu_cxx::__ops::_Iter_comp_iter<QSortFilterProxyModelLessThan> > (__chunk_size=7, __comp=..., __last=0x560430ab9468, __first=0x560430ab93e0) at /usr/include/c++/13/bits/stl_algo.h:2706 #21 std::__merge_sort_with_buffer<int*, int*, __gnu_cxx::__ops::_Iter_comp_iter<QSortFilterProxyModelLessThan> > (__first=__first@entry=0x560430ab9338, __last=__last@entry=0x560430ab9468, __buffer=__buffer@entry=0x56043119b9a0, __comp=...) at /usr/include/c++/13/bits/stl_algo.h:2727 #22 0x00007f79aa0ba92f in std::__stable_sort_adaptive<int*, int*, __gnu_cxx::__ops::_Iter_comp_iter<QSortFilterProxyModelLessThan> > (__comp=..., __buffer=0x56043119b9a0, __last=0x560430ab9598, __middle=<optimized out>, __first=0x560430ab9338) at /usr/include/c++/13/bits/stl_algo.h:2742 #23 std::__stable_sort<int*, __gnu_cxx::__ops::_Iter_comp_iter<QSortFilterProxyModelLessThan> > (__comp=..., __last=0x560430ab9598, __first=0x560430ab9338) at /usr/include/c++/13/bits/stl_algo.h:5041 #24 std::stable_sort<int*, QSortFilterProxyModelLessThan> (__comp=..., __last=0x560430ab9598, __first=0x560430ab9338) at /usr/include/c++/13/bits/stl_algo.h:5119 #25 QSortFilterProxyModelPrivate::sort_source_rows (this=<optimized out>, source_rows=..., source_parent=...) at itemmodels/qsortfilterproxymodel.cpp:704 #26 0x00007f79aa0c08cb in QSortFilterProxyModelPrivate::source_items_inserted (this=0x7f799c003090, source_parent=..., start=<optimized out>, end=<optimized out>, orient=Qt::Vertical) at itemmodels/qsortfilterproxymodel.cpp:1060 #27 0x00007f79aa0c3afd in QSortFilterProxyModelPrivate::_q_sourceRowsInserted (end=757, start=592, source_parent=..., this=0x7f799c003090) at itemmodels/qsortfilterproxymodel.cpp:1702 #28 QSortFilterProxyModelPrivate::_q_sourceRowsInserted (this=0x7f799c003090, source_parent=..., start=592, end=757) at itemmodels/qsortfilterproxymodel.cpp:1696 #29 0x00007f79aa1257b3 in doActivate<false> (sender=0x560430718650, signal_index=13, argv=0x7ffc86273620) at kernel/qobject.cpp:3937 #30 0x00007f79aa11e47f in QMetaObject::activate (sender=sender@entry=0x560430718650, m=m@entry=0x7f79aa3c5d40, local_signal_index=local_signal_index@entry=10, argv=argv@entry=0x7ffc86273620) at kernel/qobject.cpp:3985 #31 0x00007f79aa08643e in QAbstractItemModel::rowsInserted (this=this@entry=0x560430718650, _t1=..., _t2=<optimized out>, _t3=<optimized out>, _t4=...) at .moc/moc_qabstractitemmodel.cpp:592 #32 0x00007f79aa08f38a in QAbstractItemModel::endInsertRows (this=0x560430718650) at itemmodels/qabstractitemmodel.cpp:2780 #33 0x00007f79abfc98d5 in ?? () from /lib64/libKF5KIOWidgets.so.5 #34 0x00007f79aa125812 in QtPrivate::QSlotObjectBase::call (a=0x7ffc862738c0, r=0x560430718650, this=0x560430740630) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398 #35 doActivate<false> (sender=0x560430718bd0, signal_index=16, argv=0x7ffc862738c0) at kernel/qobject.cpp:3925 #36 0x00007f79abe07dca in KCoreDirLister::itemsAdded(QUrl const&, KFileItemList const&) () from /lib64/libKF5KIOCore.so.5 #37 0x00007f79abe08e1c in ?? () from /lib64/libKF5KIOCore.so.5 #38 0x00007f79abe05e80 in ?? () from /lib64/libKF5KIOCore.so.5 #39 0x00007f79aa125812 in QtPrivate::QSlotObjectBase::call (a=0x7ffc86273b30, r=0x7f79abe8b4a0, this=0x560430ae3980) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398 #40 doActivate<false> (sender=0x560430d04270, signal_index=25, argv=0x7ffc86273b30) at kernel/qobject.cpp:3925 #41 0x00007f79abdc3644 in KIO::ListJob::entries(KIO::Job*, QList<KIO::UDSEntry> const&) () from /lib64/libKF5KIOCore.so.5 #42 0x00007f79aa125812 in QtPrivate::QSlotObjectBase::call (a=0x7ffc86273c30, r=0x560430d04270, this=0x560430b4f9c0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398 #43 doActivate<false> (sender=0x560430a89f90, signal_index=9, argv=0x7ffc86273c30) at kernel/qobject.cpp:3925 #44 0x00007f79abdb40e5 in KIO::SlaveInterface::listEntries(QList<KIO::UDSEntry> const&) () from /lib64/libKF5KIOCore.so.5 #45 0x00007f79abdb907d in KIO::SlaveInterface::dispatch(int, QByteArray const&) () from /lib64/libKF5KIOCore.so.5 #46 0x00007f79abdb3e16 in KIO::SlaveInterface::dispatch() () from /lib64/libKF5KIOCore.so.5 #47 0x00007f79abdb6719 in KIO::Slave::gotInput() () from /lib64/libKF5KIOCore.so.5 #48 0x00007f79aa125812 in QtPrivate::QSlotObjectBase::call (a=0x7ffc86273e50, r=0x560430a89f90, this=0x560430a61c90) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398 #49 doActivate<false> (sender=0x560430a89f70, signal_index=3, argv=0x7ffc86273e50) at kernel/qobject.cpp:3925 #50 0x00007f79aa119320 in QObject::event (this=0x560430a89f70, e=0x560430c0ae60) at kernel/qobject.cpp:1347 #51 0x00007f79aada519e in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x560430a89f70, e=0x560430c0ae60) at kernel/qapplication.cpp:3640 #52 0x00007f79aa0ed568 in QCoreApplication::notifyInternal2 (receiver=0x560430a89f70, event=0x560430c0ae60) at kernel/qcoreapplication.cpp:1064 #53 0x00007f79aa0ed72e in QCoreApplication::sendEvent (receiver=<optimized out>, event=<optimized out>) at kernel/qcoreapplication.cpp:1462 #54 0x00007f79aa0f0b61 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x5604305094b0) at kernel/qcoreapplication.cpp:1821 #55 0x00007f79aa0f10a8 in QCoreApplication::sendPostedEvents (receiver=<optimized out>, event_type=<optimized out>) at kernel/qcoreapplication.cpp:1680 #56 0x00007f79aa146c93 in postEventSourceDispatch (s=0x56043056b3e0) at kernel/qeventdispatcher_glib.cpp:277 #57 0x00007f79a7d169d8 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0 #58 0x00007f79a7d16de8 in ?? () from /lib64/libglib-2.0.so.0 #59 0x00007f79a7d16e7c in g_main_context_iteration () from /lib64/libglib-2.0.so.0 #60 0x00007f79aa1464a6 in QEventDispatcherGlib::processEvents (this=0x560430577d40, flags=...) at kernel/qeventdispatcher_glib.cpp:423 #61 0x00007f79aa0ebffb in QEventLoop::exec (this=this@entry=0x7ffc86274240, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69 #62 0x00007f79aa0f4490 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:121 #63 0x000056042f6dd423 in ?? () #64 0x00007f79a96281b0 in __libc_start_call_main () from /lib64/libc.so.6 #65 0x00007f79a9628279 in __libc_start_main_impl () from /lib64/libc.so.6 #66 0x000056042f6ddb85 in ?? () [Inferior 1 (process 15899) detached] The reporter indicates this bug may be a duplicate of or related to bug 456244, bug 472121, bug 472364, bug 473939. Reported using DrKonqi -- You are receiving this mail because: You are watching all bug changes.