https://bugs.kde.org/show_bug.cgi?id=470252
Bug ID: 470252 Summary: [regression] Gwenview crashes when trying to load a multi-image tiff file Classification: Applications Product: gwenview Version: Git (add output of "git log -1 --oneline" to description) Platform: Other OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: general Assignee: gwenview-bugs-n...@kde.org Reporter: o...@geek.co.il Target Milestone: --- SUMMARY Running Gwenview from kdesrc building for Plasma 6, git: 0878375b (HEAD -> master, origin/master, origin/HEAD) GIT_SILENT Sync po/docbooks with svn When trying to open a mutli-image tiff file - saved from a GIMP multiple layers image - gwenview crashes. This is a regression - gwenview from Neon unstable package 4:23.04.1+p22.04+tunstable+git20230525.0041-0 successfully opens these files. Here's a backtrace from drkonqi's "interactive debugger" session: ---8<--- Core was generated by `gwenview /home/odeda/Documents/mobile/media/Walls/art/unsorted1/Victoria.(Illus'. Program terminated with signal SIGSEGV, Segmentation fault. #0 wl_proxy_get_version (proxy=0x0) at ../src/wayland-client.c:2248 2248 ../src/wayland-client.c: No such file or directory. [Current thread is 1 (Thread 0x7f29823d0640 (LWP 2940239))] (gdb) bt #0 wl_proxy_get_version (proxy=0x0) at ../src/wayland-client.c:2248 #1 0x00007f298982dbe8 in zwp_pointer_gestures_v1_release (zwp_pointer_gestures_v1=0x0) at /home/odeda/kde/build/gwenview/lib/wayland-pointer-gestures-unstable-v1-client-protocol.h:309 #2 0x00007f298982e08c in QtWayland::zwp_pointer_gestures_v1::release (this=0x55b848a93f60) at /home/odeda/kde/build/gwenview/lib/qwayland-pointer-gestures-unstable-v1.cpp:85 #3 0x00007f29897ffc5f in Gwenview::WaylandGestures::~WaylandGestures (this=0x55b848a8d220, __in_chrg=<optimized out>) at /home/odeda/kde/src/gwenview/lib/waylandgestures/waylandgestures.cpp:92 #4 0x00007f29897ffcac in Gwenview::WaylandGestures::~WaylandGestures (this=0x55b848a8d220, __in_chrg=<optimized out>) at /home/odeda/kde/src/gwenview/lib/waylandgestures/waylandgestures.cpp:97 #5 0x00007f298971bc7e in Gwenview::DocumentView::~DocumentView (this=0x55b848022c70, __in_chrg=<optimized out>) at /home/odeda/kde/src/gwenview/lib/documentview/documentview.cpp:499 #6 0x00007f298971bd4a in Gwenview::DocumentView::~DocumentView (this=0x55b848022c70, __in_chrg=<optimized out>) at /home/odeda/kde/src/gwenview/lib/documentview/documentview.cpp:504 #7 0x00007f29897432da in qDeleteAll<QSet<Gwenview::DocumentView*>::const_iterator> (begin=..., end=...) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qalgorithms.h:27 #8 0x00007f29897422cc in qDeleteAll<QSet<Gwenview::DocumentView*> > (c=...) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qalgorithms.h:35 #9 0x00007f2989741f10 in Gwenview::DocumentViewContainerPrivate::resetSet (this=0x55b8482d6cc0, set=0x55b8482d6ce0) at /home/odeda/kde/src/gwenview/lib/documentview/documentviewcontainer.cpp:76 #10 0x00007f29897408c4 in Gwenview::DocumentViewContainer::reset (this=0x55b8482dac20) at /home/odeda/kde/src/gwenview/lib/documentview/documentviewcontainer.cpp:145 #11 0x000055b845f1c978 in Gwenview::ViewMainPage::reset (this=0x55b84830b750) at /home/odeda/kde/src/gwenview/app/viewmainpage.cpp:786 #12 0x000055b845f5b3ce in Gwenview::MainWindow::openDirUrl (this=0x55b847dc8400, url=...) at /home/odeda/kde/src/gwenview/app/mainwindow.cpp:1351 #13 0x000055b845f7043f in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QUrl const&>, void, void (Gwenview::MainWindow::*)(QUrl const&)>::call ( f=(void (Gwenview::MainWindow::*)(Gwenview::MainWindow * const, const QUrl &)) 0x55b845f5b0b4 <Gwenview::MainWindow::openDirUrl(QUrl const&)>, o=0x55b847dc8400, arg=0x7ffef8dceb80) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:135 #14 0x000055b845f6f4c9 in QtPrivate::FunctionPointer<void (Gwenview::MainWindow::*)(QUrl const&)>::call<QtPrivate::List<QUrl const&>, void> ( f=(void (Gwenview::MainWindow::*)(Gwenview::MainWindow * const, const QUrl &)) 0x55b845f5b0b4 <Gwenview::MainWindow::openDirUrl(QUrl const&)>, o=0x55b847dc8400, arg=0x7ffef8dceb80) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:172 #15 0x000055b845f6dafb in QtPrivate::QSlotObject<void (Gwenview::MainWindow::*)(QUrl const&), QtPrivate::List<QUrl const&>, void>::impl (which=1, this_=0x55b8482a1800, r=0x55b847dc8400, a=0x7ffef8dceb80, ret=0x0) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:384 #16 0x00007f298678e1f7 in QtPrivate::QSlotObjectBase::call (a=0x7ffef8dceb80, r=0x55b847dc8400, this=<optimized out>) at ./src/corelib/kernel/qobjectdefs_impl.h:363 #17 doActivate<false> (sender=0x55b847b74d20, signal_index=8, argv=0x7ffef8dceb80) at ./src/corelib/kernel/qobject.cpp:3992 #18 0x00007f298936bb1a in KUrlNavigator::urlChanged (this=0x55b847b74d20, _t1=...) at /home/odeda/kde/build/kio/src/filewidgets/KF6KIOFileWidgets_autogen/include/moc_kurlnavigator.cpp:391 #19 0x00007f298936526d in operator() (__closure=0x55b8482cf940) at /home/odeda/kde/src/kio/src/filewidgets/kurlnavigator.cpp:198 #20 0x00007f298936eae5 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, KUrlNavigatorPrivate::KUrlNavigatorPrivate(const QUrl&, KUrlNavigator*, KFilePlacesModel*)::<lambda()> >::call(struct {...} &, void **) (f=..., arg=0x7ffef8dced28) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:127 #21 0x00007f298936e6d5 in QtPrivate::Functor<KUrlNavigatorPrivate::KUrlNavigatorPrivate(const QUrl&, KUrlNavigator*, KFilePlacesModel*)::<lambda()>, 0>::call<QtPrivate::List<>, void>(struct {...} &, void *, void **) (f=..., arg=0x7ffef8dced28) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:241 #22 0x00007f298936d9c8 in QtPrivate::QFunctorSlotObject<KUrlNavigatorPrivate::KUrlNavigatorPrivate(const QUrl&, KUrlNavigator*, KFilePlacesModel*)::<lambda()>, 0, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) ( which=1, this_=0x55b8482cf930, r=0x55b847b74d20, a=0x7ffef8dced28, ret=0x0) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:409 #23 0x00007f298678e1f7 in QtPrivate::QSlotObjectBase::call (a=0x7ffef8dced28, r=0x55b847b74d20, this=<optimized out>) at ./src/corelib/kernel/qobjectdefs_impl.h:363 #24 doActivate<false> (sender=0x55b848157580, signal_index=3, argv=0x7ffef8dced28) at ./src/corelib/kernel/qobject.cpp:3992 #25 0x00007f298954135f in KCoreUrlNavigator::currentLocationUrlChanged (this=0x55b848157580) at /home/odeda/kde/build/kio/src/gui/KF6KIOGui_autogen/EWIEGA46WW/moc_kcoreurlnavigator.cpp:379 #26 0x00007f298955904e in KCoreUrlNavigator::setCurrentLocationUrl (this=0x55b848157580, newUrl=...) at /home/odeda/kde/src/kio/src/gui/kcoreurlnavigator.cpp:246 #27 0x00007f298936ab7f in KUrlNavigator::setLocationUrl (this=0x55b847b74d20, newUrl=...) at /home/odeda/kde/src/kio/src/filewidgets/kurlnavigator.cpp:1063 #28 0x00007f298936637f in KUrlNavigatorPrivate::slotApplyUrl (this=0x55b847fdbe40, url=...) at /home/odeda/kde/src/kio/src/filewidgets/kurlnavigator.cpp:311 #29 0x00007f29893666ab in operator() (__closure=0x55b84811e970) at /home/odeda/kde/src/kio/src/filewidgets/kurlnavigator.cpp:371 #30 0x00007f298936efb6 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, KUrlNavigatorPrivate::applyUncommittedUrl()::<lambda()> >::call(struct {...} &, void **) (f=..., arg=0x7ffef8dcf1b0) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:127 #31 0x00007f298936e8f7 in QtPrivate::Functor<KUrlNavigatorPrivate::applyUncommittedUrl()::<lambda()>, 0>::call<QtPrivate::List<>, void>(struct {...} &, void *, void **) (f=..., arg=0x7ffef8dcf1b0) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:241 #32 0x00007f298936e10e in QtPrivate::QFunctorSlotObject<KUrlNavigatorPrivate::applyUncommittedUrl()::<lambda()>, 0, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=1, this_=0x55b84811e960, r=0x55b847b74d20, a=0x7ffef8dcf1b0, ret=0x0) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:409 #33 0x00007f298678e1f7 in QtPrivate::QSlotObjectBase::call (a=0x7ffef8dcf1b0, r=0x55b847b74d20, this=<optimized out>) at ./src/corelib/kernel/qobjectdefs_impl.h:363 #34 doActivate<false> (sender=0x55b8482ad1a0, signal_index=6, argv=0x7ffef8dcf1b0) at ./src/corelib/kernel/qobject.cpp:3992 #35 0x00007f2986d48c2f in KJob::result (this=0x55b8482ad1a0, _t1=0x55b8482ad1a0, _t2=...) at /home/odeda/kde/build/kcoreaddons/src/lib/KF6CoreAddons_autogen/include/moc_kjob.cpp:823 #36 0x00007f2986d4631d in KJob::finishJob (this=0x55b8482ad1a0, emitResult=true) at /home/odeda/kde/src/kcoreaddons/src/lib/jobs/kjob.cpp:98 #37 0x00007f2986d4704b in KJob::emitResult (this=0x55b8482ad1a0) at /home/odeda/kde/src/kcoreaddons/src/lib/jobs/kjob.cpp:329 #38 0x00007f2988b357ee in KIO::SimpleJob::slotFinished (this=0x55b8482ad1a0) at /home/odeda/kde/src/kio/src/core/simplejob.cpp:229 #39 0x00007f2988b39c6a in KIO::StatJob::slotFinished (this=0x55b8482ad1a0) at /home/odeda/kde/src/kio/src/core/statjob.cpp:170 #40 0x00007f2988b38b1f in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (KIO::SimpleJob::*)()>::call(void (KIO::SimpleJob::*)(), KIO::SimpleJob*, void**) (f=&virtual KIO::SimpleJob::slotFinished(), o=0x55b8482ad1a0, arg=0x55b848278238) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:135 #41 0x00007f2988b38839 in QtPrivate::FunctionPointer<void (KIO::SimpleJob::*)()>::call<QtPrivate::List<>, void>(void (KIO::SimpleJob::*)(), KIO::SimpleJob*, void**) (f=&virtual KIO::SimpleJob::slotFinished(), o=0x55b8482ad1a0, arg=0x55b848278238) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:172 #42 0x00007f2988b386c5 in QtPrivate::QSlotObject<void (KIO::SimpleJob::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x55b8482ad260, r=0x55b8482ad1a0, a=0x55b848278238, ret=0x0) at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs_impl.h:384 #43 0x00007f298678327f in QObject::event (this=0x55b8482ad1a0, e=0x55b8482781f0) at ./src/corelib/kernel/qobject.cpp:1391 #44 0x00007f29877874a6 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x55b8482ad1a0, e=0x55b8482781f0) at ./src/widgets/kernel/qapplication.cpp:3284 #45 0x00007f29867370b8 in QCoreApplication::notifyInternal2 (receiver=0x55b8482ad1a0, event=0x55b8482781f0) at ./src/corelib/kernel/qcoreapplication.cpp:1115 #46 0x00007f298673727d in QCoreApplication::sendEvent (receiver=<optimized out>, event=<optimized out>) at ./src/corelib/kernel/qcoreapplication.cpp:1533 #47 0x00007f298673ab57 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x55b847ac5970) at ./src/corelib/kernel/qcoreapplication.cpp:1895 --Type <RET> for more, q to quit, c to continue without paging-- #48 0x00007f298673ae10 in QCoreApplication::sendPostedEvents (receiver=<optimized out>, event_type=<optimized out>) at ./src/corelib/kernel/qcoreapplication.cpp:1754 #49 0x00007f2986996ac7 in postEventSourceDispatch (s=0x55b847b2db10) at ./src/corelib/kernel/qeventdispatcher_glib.cpp:243 #50 0x00007f29852c649d in g_main_dispatch (context=0x7f297c000f10) at ../../../glib/gmain.c:3460 #51 g_main_context_dispatch (context=0x7f297c000f10) at ../../../glib/gmain.c:4200 #52 0x00007f2985321178 in g_main_context_iterate.constprop.0 (context=0x7f297c000f10, block=<optimized out>, dispatch=1, self=<optimized out>) at ../../../glib/gmain.c:4276 #53 0x00007f29852c51b0 in g_main_context_iteration (context=0x7f297c000f10, may_block=1) at ../../../glib/gmain.c:4343 #54 0x00007f298699632e in QEventDispatcherGlib::processEvents (this=0x55b847aca5b0, flags=...) at ./src/corelib/kernel/qeventdispatcher_glib.cpp:393 #55 0x00007f2986743a5b in QEventLoop::exec (this=this@entry=0x7ffef8dcf7f0, flags=..., flags@entry=...) at ./src/corelib/global/qflags.h:34 #56 0x00007f298673f8e6 in QCoreApplication::exec () at ./src/corelib/global/qflags.h:74 #57 0x000055b845f57bd6 in main (argc=2, argv=0x7ffef8dcfb08) at /home/odeda/kde/src/gwenview/app/main.cpp:213 ---8<--- -- You are receiving this mail because: You are watching all bug changes.