Bug 299952

Summary: crash when closing ExpoBlending tool
Product: [Applications] digikam Reporter: itilo <itilo>
Component: Plugin-Generic-ExpoBlendingAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: caulier.gilles
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Mageia RPMs   
OS: Linux   
Latest Commit: Version Fixed In: 2.6.0
Sentry Crash Report:

Description itilo 2012-05-13 18:22:12 UTC
Application: digikam (2.6.0-rc)
KDE Platform Version: 4.6.5 (4.6.5)
Qt Version: 4.7.4
Operating System: Linux 2.6.38.8-desktop-10.mga x86_64
Distribution: "Mageia 1"

-- Information about the crash:
- What I was doing when the application crashed:
je quittai l'application (parcourir--->quitter), j'avais essayé de faire un hdr à partir de deux jpegs, mais l'alignement des photos n'a pas fonctionné:
(digikam:20276): GStreamer-CRITICAL **: gst_debug_add_log_function: assertion `func != NULL' failed
digikam(20276)/KIPI (general) KIPIExpoBlendingPlugin::ItemsPage::slotAction: Unknown action
QSocketNotifier: Invalid socket 16 and type 'Read', disabling...
KCrash: Application 'digikam' crashing...
KCrash: Attempting to start /usr/lib64/kde4/libexec/drkonqi from kdeinit

The crash can be reproduced every time.

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

Thread 4 (Thread 0x7f8f33fff700 (LWP 20278)):
#0  0x00007f8f54547a33 in poll () from /lib64/libc.so.6
#1  0x00007f8f4ede4304 in ?? () from /lib64/libglib-2.0.so.0
#2  0x00007f8f4ede483d in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#3  0x00007f8f55896986 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#4  0x00007f8f5586a6d2 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#5  0x00007f8f5586a91c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#6  0x00007f8f5577e944 in QThread::exec() () from /usr/lib64/libQtCore.so.4
#7  0x00007f8f5584be18 in ?? () from /usr/lib64/libQtCore.so.4
#8  0x00007f8f557811e5 in ?? () from /usr/lib64/libQtCore.so.4
#9  0x00007f8f554f7d25 in start_thread () from /lib64/libpthread.so.0
#10 0x00007f8f5455223d in clone () from /lib64/libc.so.6
#11 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f8f337fe700 (LWP 20285)):
#0  0x00007f8f554fc14c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f8f557818cb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00007f8f5a3db041 in Digikam::ParkingThread::run (this=0x24f6b50) at /usr/local/digikam-software-compilation-2.6.0-rc/core/libs/threads/threadmanager.cpp:119
#3  0x00007f8f557811e5 in ?? () from /usr/lib64/libQtCore.so.4
#4  0x00007f8f554f7d25 in start_thread () from /lib64/libpthread.so.0
#5  0x00007f8f5455223d in clone () from /lib64/libc.so.6
#6  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f8efa9be700 (LWP 20405)):
#0  0x00007f8f554fc14c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f8f557818cb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00007f8f15edccc9 in KIPIPlugins::KPRawThumbThread::run (this=0x4f51630)
    at /usr/local/digikam-software-compilation-2.6.0-rc/extra/kipi-plugins/common/libkipiplugins/tools/kprawthumbthread.cpp:107
#3  0x00007f8f557811e5 in ?? () from /usr/lib64/libQtCore.so.4
#4  0x00007f8f554f7d25 in start_thread () from /lib64/libpthread.so.0
#5  0x00007f8f5455223d in clone () from /lib64/libc.so.6
#6  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f8f5d54b900 (LWP 20276)):
[KCrash Handler]
#6  0x00000000038960e8 in ?? ()
#7  0x00007f8f15ee66b8 in KIPIPlugins::KPDialogBase::~KPDialogBase (this=0x3d41b08, __in_chrg=<value optimized out>)
    at /usr/local/digikam-software-compilation-2.6.0-rc/extra/kipi-plugins/common/libkipiplugins/dialogs/kptooldialog.cpp:80
#8  0x00007f8f15ee6a12 in KIPIPlugins::KPWizardDialog::~KPWizardDialog (this=0x3d41ad0, __in_chrg=<value optimized out>)
    at /usr/local/digikam-software-compilation-2.6.0-rc/extra/kipi-plugins/common/libkipiplugins/dialogs/kptooldialog.cpp:119
#9  0x00007f8f14aaa84e in KIPIExpoBlendingPlugin::ImportWizardDlg::~ImportWizardDlg (this=0x3d41ad0, __in_chrg=<value optimized out>)
    at /usr/local/digikam-software-compilation-2.6.0-rc/extra/kipi-plugins/expoblending/importwizard/importwizarddlg.cpp:111
#10 0x00007f8f14aaa88c in KIPIExpoBlendingPlugin::ImportWizardDlg::~ImportWizardDlg (this=0x3d41ad0, __in_chrg=<value optimized out>)
    at /usr/local/digikam-software-compilation-2.6.0-rc/extra/kipi-plugins/expoblending/importwizard/importwizarddlg.cpp:114
#11 0x00007f8f14a9e46b in KIPIExpoBlendingPlugin::Manager::~Manager (this=0x44028e0, __in_chrg=<value optimized out>)
    at /usr/local/digikam-software-compilation-2.6.0-rc/extra/kipi-plugins/expoblending/manager/manager.cpp:97
#12 0x00007f8f14a9e518 in KIPIExpoBlendingPlugin::Manager::~Manager (this=0x44028e0, __in_chrg=<value optimized out>)
    at /usr/local/digikam-software-compilation-2.6.0-rc/extra/kipi-plugins/expoblending/manager/manager.cpp:100
#13 0x00007f8f5587dfb4 in QObjectPrivate::deleteChildren() () from /usr/lib64/libQtCore.so.4
#14 0x00007f8f55882af2 in QObject::~QObject() () from /usr/lib64/libQtCore.so.4
#15 0x00007f8f5b0a70c9 in KIPI::Plugin::~Plugin (this=0x3c61e70, __in_chrg=<value optimized out>) at /usr/local/digikam-software-compilation-2.6.0-rc/extra/libkipi/libkipi/plugin.cpp:76
#16 0x00007f8f14a9cfdc in KIPIExpoBlendingPlugin::Plugin_ExpoBlending::~Plugin_ExpoBlending (this=0x3c61e70, __in_chrg=<value optimized out>)
    at /usr/local/digikam-software-compilation-2.6.0-rc/extra/kipi-plugins/expoblending/plugin/plugin_expoblending.cpp:68
#17 0x00007f8f14a9d00e in KIPIExpoBlendingPlugin::Plugin_ExpoBlending::~Plugin_ExpoBlending (this=0x3c61e70, __in_chrg=<value optimized out>)
    at /usr/local/digikam-software-compilation-2.6.0-rc/extra/kipi-plugins/expoblending/plugin/plugin_expoblending.cpp:70
#18 0x00007f8f5587dfb4 in QObjectPrivate::deleteChildren() () from /usr/lib64/libQtCore.so.4
#19 0x00007f8f55882af2 in QObject::~QObject() () from /usr/lib64/libQtCore.so.4
#20 0x00007f8f5b0a34c8 in KIPI::Interface::~Interface (this=0x3c643b0, __in_chrg=<value optimized out>) at /usr/local/digikam-software-compilation-2.6.0-rc/extra/libkipi/libkipi/interface.cpp:77
#21 0x0000000000532eb7 in Digikam::KipiInterface::~KipiInterface (this=0x3c643b0, __in_chrg=<value optimized out>)
    at /usr/local/digikam-software-compilation-2.6.0-rc/core/utilities/kipiiface/kipiinterface.cpp:97
#22 0x0000000000532eea in Digikam::KipiInterface::~KipiInterface (this=0x3c643b0, __in_chrg=<value optimized out>)
    at /usr/local/digikam-software-compilation-2.6.0-rc/core/utilities/kipiiface/kipiinterface.cpp:100
#23 0x00007f8f5587dfb4 in QObjectPrivate::deleteChildren() () from /usr/lib64/libQtCore.so.4
#24 0x00007f8f564d28a0 in QWidget::~QWidget() () from /usr/lib64/libQtGui.so.4
#25 0x00007f8f572799d5 in KMainWindow::~KMainWindow() () from /usr/lib64/libkdeui.so.5
#26 0x0000000000592b80 in Digikam::DigikamApp::~DigikamApp (this=0x23f0a30, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>)
    at /usr/local/digikam-software-compilation-2.6.0-rc/core/digikam/main/digikamapp.cpp:301
#27 0x0000000000592c3a in Digikam::DigikamApp::~DigikamApp (this=0x23f0a30, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>)
    at /usr/local/digikam-software-compilation-2.6.0-rc/core/digikam/main/digikamapp.cpp:359
#28 0x00007f8f5587f8e8 in QObject::event(QEvent*) () from /usr/lib64/libQtCore.so.4
#29 0x00007f8f564d701d in QWidget::event(QEvent*) () from /usr/lib64/libQtGui.so.4
#30 0x00007f8f568a60bb in QMainWindow::event(QEvent*) () from /usr/lib64/libQtGui.so.4
#31 0x00007f8f572b19c3 in KXmlGuiWindow::event(QEvent*) () from /usr/lib64/libkdeui.so.5
#32 0x00007f8f56485794 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#33 0x00007f8f5648a36a in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#34 0x00007f8f571b2e06 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#35 0x00007f8f5586b31c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#36 0x00007f8f5586eb25 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/libQtCore.so.4
#37 0x00007f8f55896793 in ?? () from /usr/lib64/libQtCore.so.4
#38 0x00007f8f4ede3dc3 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#39 0x00007f8f4ede45a0 in ?? () from /lib64/libglib-2.0.so.0
#40 0x00007f8f4ede483d in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#41 0x00007f8f5589692f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#42 0x00007f8f5652c3ae in ?? () from /usr/lib64/libQtGui.so.4
#43 0x00007f8f5586a6d2 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#44 0x00007f8f5586a91c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#45 0x00007f8f5586eddb in QCoreApplication::exec() () from /usr/lib64/libQtCore.so.4
#46 0x00000000006d0085 in main (argc=1, argv=0x7fff4dad5108) at /usr/local/digikam-software-compilation-2.6.0-rc/core/digikam/main/main.cpp:232

Reported using DrKonqi
Comment 1 caulier.gilles 2012-05-13 20:24:52 UTC
Git commit a445128a241c47e3c75731a0c78d43f3f431d70d by Gilles Caulier.
Committed on 13/05/2012 at 22:23.
Pushed by cgilles into branch 'master'.

facorization and make rules to prevent crash with about data deletion into Panorama and Expoblending tools

M  +1    -24   common/libkipiplugins/dialogs/kpoutputdialog.cpp
M  +2    -8    common/libkipiplugins/dialogs/kpoutputdialog.h
M  +0    -7    common/libkipiplugins/tools/kpaboutdata.cpp
M  +0    -2    common/libkipiplugins/tools/kpaboutdata.h
M  +6    -5    expoblending/blendingdlg/expoblendingdlg.cpp
M  +0    -1    expoblending/blendingdlg/expoblendingdlg.h
M  +3    -3    expoblending/importwizard/importwizarddlg.cpp
M  +0    -1    expoblending/importwizard/importwizarddlg.h
M  +2    -1    expoblending/importwizard/preprocessingpage.cpp
M  +3    -18   expoblending/manager/manager.cpp
M  +3    -6    expoblending/manager/manager.h
M  +0    -1    expoblending/plugin/expoblending.cpp
M  +0    -1    expoblending/plugin/plugin_expoblending.cpp
M  +1    -2    panorama/importwizard/importwizarddlg.cpp
M  +2    -1    panorama/importwizard/optimizepage.cpp
M  +2    -1    panorama/importwizard/preprocessingpage.cpp
M  +3    -22   panorama/manager/manager.cpp
M  +2    -5    panorama/manager/manager.h
M  +0    -1    panorama/plugin/panorama.cpp
M  +0    -1    panorama/plugin/plugin_panorama.cpp

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