Bug 420585

Summary: gwenview crashes when closing it quickly after it opens
Product: [Applications] gwenview Reporter: magiblot
Component: generalAssignee: Gwenview Bugs <gwenview-bugs-null>
Status: RESOLVED DUPLICATE    
Severity: crash CC: ricardocanul7
Priority: NOR Keywords: drkonqi
Version: 20.04.0   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: New crash information added by DrKonqi

Description magiblot 2020-04-25 19:03:15 UTC
Application: gwenview (20.04.0)

Qt Version: 5.14.2
Frameworks Version: 5.69.0
Operating System: Linux 5.6.6-arch1-1 x86_64
Windowing system: X11
Distribution: "Arch Linux"

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

I opened a JPEG picture from Dolphin. Milliseconds after gwenview loaded, I closed the window from the title bar. Then DrKonqi reported it had crashed.

The crash is reproducible after some attempts.

-- Backtrace:
Application: Gwenview (gwenview), signal: Segmentation fault
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f05883366c0 (LWP 9181))]

Thread 8 (Thread 0x7f056b7fe700 (LWP 9188)):
#0  0x00007f058c222cf5 in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f0576b6630c in ?? () from /usr/lib/dri/iris_dri.so
#2  0x00007f0576b65f08 in ?? () from /usr/lib/dri/iris_dri.so
#3  0x00007f058c21c46f in start_thread () from /usr/lib/libpthread.so.0
#4  0x00007f058dae23d3 in clone () from /usr/lib/libc.so.6

Thread 7 (Thread 0x7f056bfff700 (LWP 9187)):
#0  0x00007f058c222cf5 in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f0576b6630c in ?? () from /usr/lib/dri/iris_dri.so
#2  0x00007f0576b65f08 in ?? () from /usr/lib/dri/iris_dri.so
#3  0x00007f058c21c46f in start_thread () from /usr/lib/libpthread.so.0
#4  0x00007f058dae23d3 in clone () from /usr/lib/libc.so.6

Thread 6 (Thread 0x7f057080e700 (LWP 9186)):
#0  0x00007f058c222cf5 in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f0576b6630c in ?? () from /usr/lib/dri/iris_dri.so
#2  0x00007f0576b65f08 in ?? () from /usr/lib/dri/iris_dri.so
#3  0x00007f058c21c46f in start_thread () from /usr/lib/libpthread.so.0
#4  0x00007f058dae23d3 in clone () from /usr/lib/libc.so.6

Thread 5 (Thread 0x7f057100f700 (LWP 9185)):
#0  0x00007f058c222cf5 in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f0576b6630c in ?? () from /usr/lib/dri/iris_dri.so
#2  0x00007f0576b65f08 in ?? () from /usr/lib/dri/iris_dri.so
#3  0x00007f058c21c46f in start_thread () from /usr/lib/libpthread.so.0
#4  0x00007f058dae23d3 in clone () from /usr/lib/libc.so.6

Thread 4 (Thread 0x7f0584ade700 (LWP 9184)):
#0  0x00007f058c22301a in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f058de63a48 in QWaitConditionPrivate::wait_relative (this=0x559ded975910, deadline=...) at thread/qwaitcondition_unix.cpp:136
#2  QWaitConditionPrivate::wait (deadline=..., this=0x559ded975910) at thread/qwaitcondition_unix.cpp:144
#3  QWaitCondition::wait (this=<optimized out>, mutex=0x559ded8dea28, deadline=...) at thread/qwaitcondition_unix.cpp:225
#4  0x00007f058de63b69 in QWaitCondition::wait (this=this@entry=0x559ded8deb00, mutex=mutex@entry=0x559ded8dea28, time=<optimized out>) at thread/qwaitcondition_unix.cpp:209
#5  0x00007f058de611dd in QThreadPoolThread::run (this=0x559ded8deaf0) at ../../include/QtCore/../../src/corelib/thread/qmutex.h:270
#6  0x00007f058de5ddd6 in QThreadPrivate::start (arg=0x559ded8deaf0) at thread/qthread_unix.cpp:342
#7  0x00007f058c21c46f in start_thread () from /usr/lib/libpthread.so.0
#8  0x00007f058dae23d3 in clone () from /usr/lib/libc.so.6

Thread 3 (Thread 0x7f058609a700 (LWP 9183)):
#0  0x00007f058b8cb9cd in ?? () from /usr/lib/libglib-2.0.so.0
#1  0x00007f058b8cccbb in g_main_context_prepare () from /usr/lib/libglib-2.0.so.0
#2  0x00007f058b8cd3c6 in ?? () from /usr/lib/libglib-2.0.so.0
#3  0x00007f058b8cd571 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#4  0x00007f058e0918ac in QEventDispatcherGlib::processEvents (this=0x7f0578000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007f058e03805c in QEventLoop::exec (this=this@entry=0x7f0586099cb0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:136
#6  0x00007f058de5cc62 in QThread::exec (this=this@entry=0x7f058d7da060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at ../../include/QtCore/../../src/corelib/global/qflags.h:118
#7  0x00007f058d755b28 in QDBusConnectionManager::run (this=0x7f058d7da060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:179
#8  0x00007f058de5ddd6 in QThreadPrivate::start (arg=0x7f058d7da060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:342
#9  0x00007f058c21c46f in start_thread () from /usr/lib/libpthread.so.0
#10 0x00007f058dae23d3 in clone () from /usr/lib/libc.so.6

Thread 2 (Thread 0x7f0587260700 (LWP 9182)):
#0  0x00007f058dad7abf in poll () from /usr/lib/libc.so.6
#1  0x00007f058b84263b in ?? () from /usr/lib/libxcb.so.1
#2  0x00007f058b84437b in xcb_wait_for_event () from /usr/lib/libxcb.so.1
#3  0x00007f0587beae01 in QXcbEventQueue::run (this=0x559ded554670) at qxcbeventqueue.cpp:228
#4  0x00007f058de5ddd6 in QThreadPrivate::start (arg=0x559ded554670) at thread/qthread_unix.cpp:342
#5  0x00007f058c21c46f in start_thread () from /usr/lib/libpthread.so.0
#6  0x00007f058dae23d3 in clone () from /usr/lib/libc.so.6

Thread 1 (Thread 0x7f05883366c0 (LWP 9181)):
[KCrash Handler]
#6  0x00007f058df8a403 in QUrl::operator== (this=0x7ffdcfd1ece0, url=...) at io/qurl.cpp:3636
#7  0x00007f058faec39c in Gwenview::ContextManager::setCurrentDirUrl(QUrl const&) () from /usr/lib/libgwenviewlib.so.5
#8  0x00007f058faec4a8 in ?? () from /usr/lib/libgwenviewlib.so.5
#9  0x00007f058e06ecde in QtPrivate::QSlotObjectBase::call (a=0x7ffdcfd1ee20, r=0x7f058fbfd190, this=0x559ded5ef650) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#10 doActivate<false> (sender=0x7f058fbfd190, signal_index=6, argv=0x7ffdcfd1ee20) at kernel/qobject.cpp:3870
#11 0x00007f058fadaed6 in Gwenview::DocumentFactory::readyForDirListerStart(QUrl const&) () from /usr/lib/libgwenviewlib.so.5
#12 0x00007f058e06ecde in QtPrivate::QSlotObjectBase::call (a=0x7ffdcfd1ef30, r=0x559ded960a60, this=0x559ded978db0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#13 doActivate<false> (sender=0x559ded960a60, signal_index=7, argv=0x7ffdcfd1ef30) at kernel/qobject.cpp:3870
#14 0x00007f058fadacf6 in Gwenview::Document::loaded(QUrl const&) () from /usr/lib/libgwenviewlib.so.5
#15 0x00007f058e06ecde in QtPrivate::QSlotObjectBase::call (a=0x7ffdcfd1eff0, r=0x559ded960a60, this=0x559ded992080) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#16 doActivate<false> (sender=0x559ded977c90, signal_index=5, argv=0x7ffdcfd1eff0) at kernel/qobject.cpp:3870
#17 0x00007f058fb01881 in ?? () from /usr/lib/libgwenviewlib.so.5
#18 0x00007f058faf849b in Gwenview::Document::switchToImpl(Gwenview::AbstractDocumentImpl*) () from /usr/lib/libgwenviewlib.so.5
#19 0x00007f058fb02176 in ?? () from /usr/lib/libgwenviewlib.so.5
#20 0x00007f058e06ecde in QtPrivate::QSlotObjectBase::call (a=0x7ffdcfd1f1e0, r=0x559ded890180, this=0x559ded8e38a0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#21 doActivate<false> (sender=0x559ded978cc8, signal_index=4, argv=0x7ffdcfd1f1e0) at kernel/qobject.cpp:3870
#22 0x00007f058e06930f in QMetaObject::activate (sender=<optimized out>, m=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3930
#23 0x00007f058de67d65 in QFutureWatcherBase::event (this=<optimized out>, event=0x7f057c006250) at thread/qfuturewatcher.cpp:334
#24 0x00007f058ecfb352 in QApplicationPrivate::notify_helper (this=this@entry=0x559ded54fa80, receiver=receiver@entry=0x559ded978cc8, e=e@entry=0x7f057c006250) at kernel/qapplication.cpp:3685
#25 0x00007f058ed04829 in QApplication::notify (this=0x7ffdcfd1f860, receiver=0x559ded978cc8, e=0x7f057c006250) at kernel/qapplication.cpp:3431
#26 0x00007f058e0394f2 in QCoreApplication::notifyInternal2 (receiver=0x559ded978cc8, event=0x7f057c006250) at ../../include/QtCore/../../src/corelib/kernel/qobject.h:153
#27 0x00007f058e03bd56 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x559ded528000) at kernel/qcoreapplication.cpp:1815
#28 0x00007f058e092244 in postEventSourceDispatch (s=0x559ded5bbdd0) at kernel/qeventdispatcher_glib.cpp:277
#29 0x00007f058b8cb6be in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#30 0x00007f058b8cd531 in ?? () from /usr/lib/libglib-2.0.so.0
#31 0x00007f058b8cd571 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#32 0x00007f058e091890 in QEventDispatcherGlib::processEvents (this=0x559ded5bc8d0, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#33 0x00007f058e03805c in QEventLoop::exec (this=this@entry=0x7ffdcfd1f760, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:136
#34 0x00007f058e040066 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:118
#35 0x0000559deba53917 in ?? ()
#36 0x00007f058da0a023 in __libc_start_main () from /usr/lib/libc.so.6
#37 0x0000559deba53ede in _start ()
[Inferior 1 (process 9181) detached]

Possible duplicates by query: bug 420495, bug 419395, bug 419229, bug 419117, bug 418595.

Reported using DrKonqi
Comment 1 Christoph Feck 2020-05-14 12:44:14 UTC

*** This bug has been marked as a duplicate of bug 417171 ***
Comment 2 Ricardo Canul 2020-08-02 05:38:46 UTC
Created attachment 130566 [details]
New crash information added by DrKonqi

gwenview (20.04.3) using Qt 5.14.2

- What I was doing when the application crashed:
I was opening and closing Gwenview quite fast and it crashes after opening a few images like 3 to 5

-- Backtrace (Reduced):
#4  0x00007f7e23975ad3 in QUrl::operator== (this=this@entry=0x7ffcd23a0e50, url=...) at io/qurl.cpp:3636
#5  0x00007f7e27e7ca49 in Gwenview::ContextManager::setCurrentDirUrl (this=this@entry=0x55a1f6172260, _url=...) at ./lib/contextmanager.cpp:186
#6  0x00007f7e27e7cb66 in Gwenview::ContextManager::<lambda(const QUrl&)>::operator() (urlReady=..., __closure=<optimized out>) at ./lib/contextmanager.cpp:135
#9  QtPrivate::QFunctorSlotObject<Gwenview::ContextManager::ContextManager(Gwenview::SortedDirModel*, QObject*)::<lambda(const QUrl&)>, 1, QtPrivate::List<const QUrl&>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=<optimized out>, this_=<optimized out>, r=<optimized out>, a=<optimized out>, ret=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:443
#10 0x00007f7e23a656d7 in QtPrivate::QSlotObjectBase::call (a=0x7ffcd23a0f90, r=0x7f7e281a4150 <Gwenview::DocumentFactory::instance()::factory>, this=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398