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.

Reply via email to