Bug 293917

Summary: crash when exiting digikam
Product: [Applications] digikam Reporter: simon
Component: Plugin-Bqm-RotateAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: annapareddyjanardhanreddy, caulier.gilles
Priority: NOR    
Version: 2.6.0   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In: 2.6.0
Sentry Crash Report:

Description simon 2012-02-12 18:05:35 UTC
Application: digikam (2.6.0-beta2)
KDE Platform Version: 4.8.00 (4.8.0 (Compiled from sources)
Qt Version: 4.7.4
Operating System: Linux 3.2.1-gentoo-r1 x86_64
Distribution (Platform): Gentoo Packages

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

just closed the app and boom it crashed, hope the backtrace helps

-- Backtrace:
Application: digiKam (digikam), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f04f7bd8800 (LWP 26831))]

Thread 4 (Thread 0x7f04d73d3710 (LWP 26836)):
#0  0x00007f04ef16a0f8 in pthread_mutex_lock () from /lib64/libpthread.so.0
#1  0x00007f04e858cb29 in g_main_context_check () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f04e858d3da in g_main_context_iterate () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f04e858d7a2 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#4  0x00007f04ef5138c6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#5  0x00007f04ef4e6d12 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#6  0x00007f04ef4e70fd in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#7  0x00007f04ef3f645d in QThread::exec() () from /usr/lib64/qt4/libQtCore.so.4
#8  0x00007f04ef4c70c8 in QInotifyFileSystemWatcherEngine::run() () from /usr/lib64/qt4/libQtCore.so.4
#9  0x00007f04ef3f9405 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4
#10 0x00007f04e43b02da in ?? () from /usr/lib64/opengl/nvidia/lib/libGL.so.1
#11 0x00007f04ef1684e7 in start_thread () from /lib64/libpthread.so.0
#12 0x00007f04ee1b628d in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7f04d6bd2710 (LWP 26848)):
#0  0x00007f04ef16c3dc in pthread_cond_wait () from /lib64/libpthread.so.0
#1  0x00007f04ef3f9f9b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/qt4/libQtCore.so.4
#2  0x00007f04f4926901 in Digikam::ParkingThread::run (this=0x121eb20) at /home/user/kde/src/digikam-sc/core/libs/threads/threadmanager.cpp:119
#3  0x00007f04ef3f9405 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4
#4  0x00007f04e43b02da in ?? () from /usr/lib64/opengl/nvidia/lib/libGL.so.1
#5  0x00007f04ef1684e7 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f04ee1b628d in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f04d4194710 (LWP 26851)):
#0  0x00007f04ef16c3dc in pthread_cond_wait () from /lib64/libpthread.so.0
#1  0x00007f04cfdcb8a9 in vlc_cond_wait (p_condvar=0x15a7a04, p_mutex=0x80) at misc/pthread.c:359
#2  0x00007f04cfd66305 in LoopRequest (data=<value optimized out>) at playlist/thread.c:539
#3  Thread (data=<value optimized out>) at playlist/thread.c:586
#4  0x00007f04e43b02da in ?? () from /usr/lib64/opengl/nvidia/lib/libGL.so.1
#5  0x00007f04ef1684e7 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f04ee1b628d in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f04f7bd8800 (LWP 26831)):
[KCrash Handler]
#6  0x00007f04cb46d2f3 in KIPIJPEGLossLessPlugin::ActionThread::~ActionThread (this=0x2794ce0, __in_chrg=<value optimized out>) at /home/user/kde/src/digikam-sc/extra/kipi-plugins/jpeglossless/plugin/actionthread.cpp:127
#7  0x00007f04ef4f9c8e in QObjectPrivate::deleteChildren() () from /usr/lib64/qt4/libQtCore.so.4
#8  0x00007f04ef50117b in QObject::~QObject() () from /usr/lib64/qt4/libQtCore.so.4
#9  0x00007f04cb467b57 in Plugin_JPEGLossless::~Plugin_JPEGLossless (this=0x277c090, __in_chrg=<value optimized out>) at /home/user/kde/src/digikam-sc/extra/kipi-plugins/jpeglossless/plugin/plugin_jpeglossless.cpp:105
#10 0x00007f04ef4f9c8e in QObjectPrivate::deleteChildren() () from /usr/lib64/qt4/libQtCore.so.4
#11 0x00007f04ef50117b in QObject::~QObject() () from /usr/lib64/qt4/libQtCore.so.4
#12 0x0000000000578fb3 in Digikam::KipiInterface::~KipiInterface (this=0x29e91c0, __in_chrg=<value optimized out>) at /home/user/kde/src/digikam-sc/core/utilities/kipiiface/kipiinterface.cpp:99
#13 0x00007f04ef4f9c8e in QObjectPrivate::deleteChildren() () from /usr/lib64/qt4/libQtCore.so.4
#14 0x00007f04f018e307 in QWidget::~QWidget() () from /usr/lib64/qt4/libQtGui.so.4
#15 0x00007f04f0f3d031 in KMainWindow::~KMainWindow (this=0xeff190, __in_chrg=<value optimized out>) at /var/tmp/portage/kde-base/kdelibs-9999/work/kdelibs-9999/kdeui/widgets/kmainwindow.cpp:473
#16 0x00000000005e8f1a in Digikam::DigikamApp::~DigikamApp (this=0xeff190, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>) at /home/user/kde/src/digikam-sc/core/digikam/main/digikamapp.cpp:358
#17 0x00007f04ef4f9b48 in QObject::event(QEvent*) () from /usr/lib64/qt4/libQtCore.so.4
#18 0x00007f04f018897f in QWidget::event(QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#19 0x00007f04f054bb9b in QMainWindow::event(QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#20 0x00007f04f0f7d380 in KXmlGuiWindow::event (this=0x2794ce0, ev=0x2766980) at /var/tmp/portage/kde-base/kdelibs-9999/work/kdelibs-9999/kdeui/xmlgui/kxmlguiwindow.cpp:126
#21 0x00007f04f0133b8c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#22 0x00007f04f0138f2d in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#23 0x00007f04f0e7bf61 in KApplication::notify (this=0x7fffdb5f3ee0, receiver=0xeff190, event=0x2967850) at /var/tmp/portage/kde-base/kdelibs-9999/work/kdelibs-9999/kdeui/kernel/kapplication.cpp:311
#24 0x00007f04ef4e7f8b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/qt4/libQtCore.so.4
#25 0x00007f04ef4eaee1 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/qt4/libQtCore.so.4
#26 0x00007f04ef513d13 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () from /usr/lib64/qt4/libQtCore.so.4
#27 0x00007f04e85898fb in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#28 0x00007f04e858d6a0 in g_main_context_iterate () from /usr/lib64/libglib-2.0.so.0
#29 0x00007f04e858d7a2 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#30 0x00007f04ef513873 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#31 0x00007f04f01e478e in QGuiEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtGui.so.4
#32 0x00007f04ef4e6d12 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#33 0x00007f04ef4e70fd in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#34 0x00007f04ef4eb0f3 in QCoreApplication::exec() () from /usr/lib64/qt4/libQtCore.so.4
#35 0x0000000000768e37 in main (argc=5, argv=0x7fffdb5f45b8) at /home/user/kde/src/digikam-sc/core/digikam/main/main.cpp:232

Reported using DrKonqi
Comment 1 caulier.gilles 2012-02-12 19:49:57 UTC
It crash in JPEGLOSSLESS kipi-plugins 

Gilles Caulier
Comment 2 caulier.gilles 2012-02-12 19:51:57 UTC
Janardhan,

Crash is relevant of your last change in JPEGLossLess about threads management ?

http://commits.kde.org/kipi-plugins/844b7a49e515be936ef6fbba67047f5131b76639

Gilles Caulier
Comment 3 caulier.gilles 2012-02-13 10:10:01 UTC
Git commit c070543ef4bbf6e4040b282a35d811e05ee95a24 by Gilles Caulier.
Committed on 13/02/2012 at 11:08.
Pushed by cgilles into branch 'master'.

use KPHostSettings here.
Do not delete KIPI::Interface. It's done by KIPI host application.

M  +45   -41   jpeglossless/plugin/actionthread.cpp

http://commits.kde.org/kipi-plugins/c070543ef4bbf6e4040b282a35d811e05ee95a24