Bug 321540 - gwenview crashed when closing
Summary: gwenview crashed when closing
Status: RESOLVED WORKSFORME
Alias: None
Product: gwenview
Classification: Applications
Component: general (show other bugs)
Version: 4.10.4
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Gwenview Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-06-23 20:53 UTC by Oldřich Jedlička
Modified: 2017-09-09 13:09 UTC (History)
4 users (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 Oldřich Jedlička 2013-06-23 20:53:30 UTC
Application: gwenview (4.10.4)
KDE Platform Version: 4.10.4 (Compiled from sources)
Qt Version: 4.8.4
Operating System: Linux 3.10.0-drm+ i686
Distribution (Platform): Gentoo Packages

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

I opened gwenview from the Midnight Commander by pressing Enter (Open action) - this automatically openes gwenview on my system. Afterwards the screen showed the picture on right, the list of other pictures in the same folder below and folder tree on the left. The list of other pictures shown that each picture was loading (thumbnails were generated at that moment).

This is a dup of bug 310202, but the bug is closed now. The details of the crash analysis follows:

The core dump contains two threads. One is main() and second one is QInotifyFileSystemWatcherEngine::run.

The important information from the Q_ASSERT shown in all backtraces is that the destructor of QApplication has returned and the instance destruction continued by parent class (QCoreApplication) - the qMetaTypeGuiHelper is NULL (set in ~QApplication() as the last step). The destruction continues to queued events (~QCoreApplicationPrivate destroying postEventList) and there is a GUI event (QMetaCallEvent), which needs the qMetaTypeGuiHelper in its destructor.

The gdb says that QMetaCallEvent's callFunction is Gwenview::ThumbnailCache::qt_static_metacall(QObject*, QMetaObject::Call, int, void**).

The crash can be reproduced sometimes.

-- Backtrace:
Application: Gwenview (gwenview), signal: Aborted
Using host libthread_db library "/lib/libthread_db.so.1".
[Current thread is 1 (Thread 0xb28d0740 (LWP 558))]

Thread 2 (Thread 0xb125eb40 (LWP 594)):
#0  0xb7767424 in __kernel_vsyscall ()
#1  0xb59ad66b in poll () at ../sysdeps/unix/syscall-template.S:81
#2  0xb4d1635b in poll (__timeout=-1, __nfds=1, __fds=0xb0902278) at /usr/include/bits/poll2.h:46
#3  g_poll (fds=0xb0902278, nfds=1, timeout=-1) at gpoll.c:132
#4  0xb4d0851e in g_main_context_poll (n_fds=1, fds=0xb0902278, timeout=<optimized out>, context=0xb09004e0, priority=<optimized out>) at gmain.c:3584
#5  g_main_context_iterate (dispatch=1, block=-1261346000, context=0xb09004e0, self=<optimized out>) at gmain.c:3285
#6  g_main_context_iterate (context=0xb09004e0, block=-1261346000, dispatch=1, self=<optimized out>) at gmain.c:3227
#7  0xb4d08671 in g_main_context_iteration (context=0xb09004e0, may_block=1) at gmain.c:3351
#8  0xb712be4f in QEventDispatcherGlib::processEvents (this=0xb0900468, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#9  0xb70f2dfd in QEventLoop::processEvents (this=0xb125e210, flags=...) at kernel/qeventloop.cpp:149
#10 0xb70f3099 in QEventLoop::exec (this=0xb125e210, flags=...) at kernel/qeventloop.cpp:204
#11 0xb6fc857d in QThread::exec (this=0x978f318) at thread/qthread.cpp:542
#12 0xb70cd233 in QInotifyFileSystemWatcherEngine::run (this=0x978f318) at io/qfilesystemwatcher_inotify.cpp:256
#13 0xb6fcb976 in QThreadPrivate::start (arg=0x978f318) at thread/qthread_unix.cpp:338
#14 0xb5122dff in start_thread (arg=0xb125eb40) at pthread_create.c:308
#15 0xb59b965e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:131

Thread 1 (Thread 0xb28d0740 (LWP 558)):
[KCrash Handler]
#7  0xb7767424 in __kernel_vsyscall ()
#8  0xb58f3b3f in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#9  0xb58f5405 in __GI_abort () at abort.c:90
#10 0xb6fbfcca in qt_message_output (msgType=QtFatalMsg, buf=0x96822a8 "ASSERT: \"qMetaTypeGuiHelper\" in file kernel/qmetatype.cpp, line 1384") at global/qglobal.cpp:2323
#11 0xb6fbfe9b in qt_message (msgType=QtFatalMsg, msg=0xb716c568 "ASSERT: \"%s\" in file %s, line %d", ap=0xbfe89f34 "\222\204\036\267}\204\036\267h\005") at global/qglobal.cpp:2369
#12 0xb6fbffb8 in qFatal (msg=0xb716c568 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2552
#13 0xb6fc0045 in qt_assert (assertion=0xb71e8492 "qMetaTypeGuiHelper", file=0xb71e847d "kernel/qmetatype.cpp", line=1384) at global/qglobal.cpp:2018
#14 0xb710265e in QMetaType::destroy (type=70, data=0x99c0990) at kernel/qmetatype.cpp:1384
#15 0xb71081dd in QMetaCallEvent::~QMetaCallEvent (this=0x9c2a430, __in_chrg=<optimized out>) at kernel/qobject.cpp:508
#16 0xb7108262 in QMetaCallEvent::~QMetaCallEvent (this=0x9c2a430, __in_chrg=<optimized out>) at kernel/qobject.cpp:517
#17 0xb70f87b4 in QCoreApplicationPrivate::~QCoreApplicationPrivate (this=0x95e3620, __in_chrg=<optimized out>) at kernel/qcoreapplication.cpp:480
#18 0xb5f94683 in QApplicationPrivate::~QApplicationPrivate (this=0x95e3620, __in_chrg=<optimized out>) at kernel/qapplication.cpp:222
#19 0xb5f94872 in QApplicationPrivate::~QApplicationPrivate (this=0x95e3620, __in_chrg=<optimized out>) at kernel/qapplication.cpp:226
#20 0xb7112336 in cleanup (pointer=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:62
#21 ~QScopedPointer (this=0xbfe8a1dc, __in_chrg=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:100
#22 QObject::~QObject (this=0xbfe8a1d8, __in_chrg=<optimized out>) at kernel/qobject.cpp:816
#23 0xb70f7214 in QCoreApplication::~QCoreApplication (this=0xbfe8a1d8, __in_chrg=<optimized out>) at kernel/qcoreapplication.cpp:830
#24 0xb5fa14ab in QApplication::~QApplication (this=0xbfe8a1d8, __in_chrg=<optimized out>) at kernel/qapplication.cpp:1098
#25 0xb6bef588 in KApplication::~KApplication (this=0xbfe8a1d8, __in_chrg=<optimized out>) at /mnt/data/tmp/portage/kde-base/kdelibs-4.10.4/work/kdelibs-4.10.4/kdeui/kernel/kapplication.cpp:894
#26 0x080677db in main (argc=<error reading variable: Cannot access memory at address 0x22e>, argv=<error reading variable: Cannot access memory at address 0x232>) at /mnt/data/tmp/portage/kde-base/gwenview-4.10.4/work/gwenview-4.10.4/app/main.cpp:143

Possible duplicates by query: bug 316495, bug 313194, bug 313047, bug 311441, bug 310887.

Reported using DrKonqi
Comment 1 max 2013-09-15 14:19:06 UTC
Application: gwenview (2.8.5)
KDE Platform Version: 4.8.5 (4.8.5)
Qt Version: 4.8.1
Operating System: Linux 3.2.0-53-generic-pae i686
Distribution: Ubuntu 12.04.3 LTS

-- Information about the crash:
AMD Athlon-64 //1,5 GB-RAM//  I had opened Gwenview in 4 Windows. 2 applications pointed to pictures reside in an Ipad(connected via USB). 2 applications pointed to pictures in an USB-harddisk. There are .jpg and .mov.'s All works fine. As I closed all 4 windows: => CRASH.
Gwenview crashed while closing in several times. 
I hope, this info is useful for you.

Thank you for your commitment. 
Max

-- Backtrace:
Application: Gwenview (gwenview), signal: Aborted
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0xb43b0980 (LWP 4031))]

Thread 5 (Thread 0xb1c74b40 (LWP 4034)):
#0  0xb771c424 in __kernel_vsyscall ()
#1  0xb5b0d48b in read () from /lib/i386-linux-gnu/libc.so.6
#2  0xb4ffc6ae in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0xb4fbdbd2 in g_main_context_check () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0xb4fbe042 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0xb4fbe56b in g_main_loop_run () from /lib/i386-linux-gnu/libglib-2.0.so.0
#6  0xb1c79134 in ?? () from /usr/lib/i386-linux-gnu/gio/modules/libdconfsettings.so
#7  0xb4fe16b3 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#8  0xb5085d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#9  0xb5b1ddde in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 4 (Thread 0xb12ffb40 (LWP 4035)):
#0  0xb5087ca0 in pthread_mutex_lock () from /lib/i386-linux-gnu/libpthread.so.0
#1  0xb5b2b904 in pthread_mutex_lock () from /lib/i386-linux-gnu/libc.so.6
#2  0xb4ffd3d0 in g_mutex_lock () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0xb4fbda16 in g_main_context_check () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0xb4fbe042 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0xb4fbe56b in g_main_loop_run () from /lib/i386-linux-gnu/libglib-2.0.so.0
#6  0xb29ef1ba in ?? () from /usr/lib/i386-linux-gnu/libgio-2.0.so.0
#7  0xb4fe16b3 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#8  0xb5085d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#9  0xb5b1ddde in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 3 (Thread 0xaf1e4b40 (LWP 4037)):
#0  0xb4ffd3f1 in g_mutex_unlock () from /lib/i386-linux-gnu/libglib-2.0.so.0
#1  0xb4fbdb2b in g_main_context_check () from /lib/i386-linux-gnu/libglib-2.0.so.0
#2  0xb4fbe042 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0xb4fbe201 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0xb714f8e7 in QEventDispatcherGlib::processEvents (this=0xb130b680, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#5  0xb711b50d in QEventLoop::processEvents (this=0xaf1e4240, flags=...) at kernel/qeventloop.cpp:149
#6  0xb711b7a9 in QEventLoop::exec (this=0xaf1e4240, flags=...) at kernel/qeventloop.cpp:204
#7  0xb700494c in QThread::exec (this=0xa0076e8) at thread/qthread.cpp:501
#8  0xb70f8b5d in QInotifyFileSystemWatcherEngine::run (this=0xa0076e8) at io/qfilesystemwatcher_inotify.cpp:248
#9  0xb7007de0 in QThreadPrivate::start (arg=0xa0076e8) at thread/qthread_unix.cpp:298
#10 0xb5085d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#11 0xb5b1ddde in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 2 (Thread 0x9a633b40 (LWP 4331)):
#0  0xb771c424 in __kernel_vsyscall ()
#1  0xb5b19f17 in syscall () from /lib/i386-linux-gnu/libc.so.6
#2  0xb7006638 in _q_futex (val2=0, addr2=0x0, timeout=0x0, val=2, op=0, addr=0x80c4b60) at thread/qmutex_unix.cpp:99
#3  QMutexPrivate::wait (this=0x80c4b60, timeout=-1) at thread/qmutex_unix.cpp:113
#4  0xb7001ecc in QMutex::lockInternal (this=0xa465eec) at thread/qmutex.cpp:436
#5  0xb7608517 in lockInline (this=0xa465eec) at /usr/include/qt4/QtCore/qmutex.h:190
#6  relock (this=<synthetic pointer>) at /usr/include/qt4/QtCore/qmutex.h:129
#7  Gwenview::ThumbnailCache::run (this=0xa465ee0) at ../../lib/thumbnailloadjob.cpp:130
#8  0xb7007de0 in QThreadPrivate::start (arg=0xa465ee0) at thread/qthread_unix.cpp:298
#9  0xb5085d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#10 0xb5b1ddde in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 1 (Thread 0xb43b0980 (LWP 4031)):
[KCrash Handler]
#7  0xb771c424 in __kernel_vsyscall ()
#8  0xb5a5d1df in raise () from /lib/i386-linux-gnu/libc.so.6
#9  0xb5a60825 in abort () from /lib/i386-linux-gnu/libc.so.6
#10 0xb5a9a39a in ?? () from /lib/i386-linux-gnu/libc.so.6
#11 0xb5aa4ee2 in ?? () from /lib/i386-linux-gnu/libc.so.6
#12 0xb5aa55c5 in ?? () from /lib/i386-linux-gnu/libc.so.6
#13 0xb700015b in qFree (ptr=0x80c4b60) at global/qmalloc.cpp:60
#14 0xb5e6f76b in ~QByteArray (this=0xa5dfe5c, __in_chrg=<optimized out>) at /usr/include/qt4/QtCore/qbytearray.h:401
#15 ~KCatalogPrivate (this=0xa5dfe50, __in_chrg=<optimized out>) at ../../kdecore/localization/kcatalog.cpp:73
#16 KCatalog::~KCatalog (this=0xf0bf4c0, __in_chrg=<optimized out>) at ../../kdecore/localization/kcatalog.cpp:146
#17 0xb5e6f792 in KCatalog::~KCatalog (this=0xf0bf4c0, __in_chrg=<optimized out>) at ../../kdecore/localization/kcatalog.cpp:147
#18 0xb5e811f3 in node_destruct (to=0xed9ba64, from=0xed9ba14, this=<optimized out>) at /usr/include/qt4/QtCore/qlist.h:431
#19 QList<KCatalog>::free (data=0xed9ba00, this=<optimized out>) at /usr/include/qt4/QtCore/qlist.h:757
#20 0xb5e8c014 in operator= (l=..., this=0x9fa09a4) at /usr/include/qt4/QtCore/qlist.h:443
#21 KLocalePrivate::updateCatalogs (this=0x9fa0978) at ../../kdecore/localization/klocale_kde.cpp:860
#22 0xb5e88e82 in KLocalePrivate::removeCatalog (this=0x9fa0978, catalog=...) at ../../kdecore/localization/klocale_kde.cpp:877
#23 0xb5e7e15a in KLocale::removeCatalog (this=0x9f92b38, catalog=...) at ../../kdecore/localization/klocale.cpp:143
#24 0xb5df0109 in ~KComponentDataPrivate (this=0xa51ba40, __in_chrg=<optimized out>) at ../../kdecore/kernel/kcomponentdata_p.h:54
#25 deref (this=0xa51ba40) at ../../kdecore/kernel/kcomponentdata_p.h:71
#26 KComponentData::~KComponentData (this=0xa5c8064, __in_chrg=<optimized out>) at ../../kdecore/kernel/kcomponentdata.cpp:123
#27 0xb5ed7985 in ~KPluginFactoryPrivate (this=0xa5c8060, __in_chrg=<optimized out>) at ../../kdecore/util/kpluginfactory_p.h:42
#28 KPluginFactory::~KPluginFactory (this=0xa5a9f18, __in_chrg=<optimized out>) at ../../kdecore/util/kpluginfactory.cpp:91
#29 0xab82fe83 in RajceExportFactory::~RajceExportFactory (this=0xa5a9f18, __in_chrg=<optimized out>) at /build/buildd/digikam-2.5.0/extra/kipi-plugins/rajceexport/plugin_rajceexport.cpp:53
#30 0xab82feb2 in RajceExportFactory::~RajceExportFactory (this=0xa5a9f18, __in_chrg=<optimized out>) at /build/buildd/digikam-2.5.0/extra/kipi-plugins/rajceexport/plugin_rajceexport.cpp:53
#31 0xb7139dd8 in QObjectCleanupHandler::clear (this=0xa003578) at kernel/qobjectcleanuphandler.cpp:140
#32 0xb7139e1d in QObjectCleanupHandler::~QObjectCleanupHandler (this=0xa003578, __in_chrg=<optimized out>) at kernel/qobjectcleanuphandler.cpp:86
#33 0xb7139e92 in QObjectCleanupHandler::~QObjectCleanupHandler (this=0xa003578, __in_chrg=<optimized out>) at kernel/qobjectcleanuphandler.cpp:87
#34 0xb5ed78f2 in destroy () at ../../kdecore/util/kpluginfactory.cpp:29
#35 0xb5d48ee9 in KCleanUpGlobalStatic::~KCleanUpGlobalStatic (this=0xb5f8d130, __in_chrg=<optimized out>) at ../../kdecore/kernel/kglobal.h:62
#36 0xb5a61f51 in ?? () from /lib/i386-linux-gnu/libc.so.6
#37 0xb5a61fdd in exit () from /lib/i386-linux-gnu/libc.so.6
#38 0xb5a484db in __libc_start_main () from /lib/i386-linux-gnu/libc.so.6
#39 0x0806647d in _start ()

An https://bugs.kde.org berichten
Comment 2 Nate Graham 2017-09-09 04:44:03 UTC
Is this reproducible with KF5 versions of Gwenview?
Comment 3 Oldřich Jedlička 2017-09-09 05:50:44 UTC
(In reply to Nate Graham from comment #2)
> Is this reproducible with KF5 versions of Gwenview?

I cannot verify it, I do not have Linux installed any more.