Bug 265641 - digiKam crash at startup
Summary: digiKam crash at startup
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Plugin-Bqm-Rotate (show other bugs)
Version: 1.8.0
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-02-06 20:31 UTC by terri.bugs
Modified: 2017-07-28 03:52 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In: 1.9.0
Sentry Crash Report:


Attachments
New crash information added by DrKonqi (16.04 KB, text/plain)
2011-02-12 16:34 UTC, bikon771
Details

Note You need to log in before you can comment on or make changes to this bug.
Description terri.bugs 2011-02-06 20:31:25 UTC
Application: digikam (2.0.0-beta2)
KDE Platform Version: 4.5.1 (KDE 4.5.1)
Qt Version: 4.7.0
Operating System: Linux 2.6.35-25-generic x86_64
Distribution: Ubuntu 10.10

-- Information about the crash:
- What I was doing when the application crashed:
Just started digikam, saw the splash screen, then the application crashed.

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

Thread 9 (Thread 0x7f2fff41c700 (LWP 2996)):
#0  0x00007f3013fc4203 in __poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f300fb6e009 in ?? () from /lib/libglib-2.0.so.0
#2  0x00007f300fb6e7b5 in g_main_loop_run () from /lib/libglib-2.0.so.0
#3  0x00007f3009dbb0f4 in ?? () from /usr/lib/libgio-2.0.so.0
#4  0x00007f300fb937e4 in ?? () from /lib/libglib-2.0.so.0
#5  0x00007f30154fd971 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#6  0x00007f3013fd092d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 8 (Thread 0x7f2ff4af0700 (LWP 3010)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f3015788e3b in wait (this=<value optimized out>, mutex=0x2082b38, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x2082b38, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00000000006bb3b8 in Digikam::ScanController::run (this=0x207ecf0) at /home/terri/Sources/digikam_20110131/core/digikam/scancontroller.cpp:602
#4  0x00007f301578827e in QThreadPrivate::start (arg=0x207ecf0) at thread/qthread_unix.cpp:266
#5  0x00007f30154fd971 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#6  0x00007f3013fd092d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 7 (Thread 0x7f2ff42ef700 (LWP 3035)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f3015788e3b in wait (this=<value optimized out>, mutex=0x231ca08, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x231ca08, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00007f3019a13f11 in Digikam::ParkingThread::run (this=0x231c9f0) at /home/terri/Sources/digikam_20110131/core/libs/threads/threadmanager.cpp:119
#4  0x00007f301578827e in QThreadPrivate::start (arg=0x231c9f0) at thread/qthread_unix.cpp:266
#5  0x00007f30154fd971 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#6  0x00007f3013fd092d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7f2fe6b1f700 (LWP 3036)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:212
#1  0x00007f2ff0ebe0d1 in ?? () from /usr/lib/libxine.so.1
#2  0x00007f30154fd971 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#3  0x00007f3013fd092d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4  0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7f2fe58e6700 (LWP 3037)):
#0  0x00007f3013fc92c3 in select () at ../sysdeps/unix/syscall-template.S:82
#1  0x00007f2ff0ee7385 in xine_usec_sleep () from /usr/lib/libxine.so.1
#2  0x00007f2ff0ecbd09 in ?? () from /usr/lib/libxine.so.1
#3  0x00007f30154fd971 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#4  0x00007f3013fd092d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7f2fe50e5700 (LWP 3038)):
#0  __pthread_mutex_unlock_usercnt (mutex=0x2943198) at pthread_mutex_unlock.c:37
#1  __pthread_mutex_unlock (mutex=0x2943198) at pthread_mutex_unlock.c:290
#2  0x00007f300fb6e03b in ?? () from /lib/libglib-2.0.so.0
#3  0x00007f300fb6e45c in g_main_context_iteration () from /lib/libglib-2.0.so.0
#4  0x00007f30158a81e6 in QEventDispatcherGlib::processEvents (this=0x29430a0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:417
#5  0x00007f301587aa02 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#6  0x00007f301587adec in QEventLoop::exec (this=0x7f2fe50e4b50, flags=) at kernel/qeventloop.cpp:201
#7  0x00007f30157852fd in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:490
#8  0x00007f2ff111a2b0 in ?? () from /usr/lib/qt4/plugins/phonon_backend/phonon_xine.so
#9  0x00007f301578827e in QThreadPrivate::start (arg=0x2942a60) at thread/qthread_unix.cpp:266
#10 0x00007f30154fd971 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#11 0x00007f3013fd092d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f2fe46df700 (LWP 3039)):
#0  0x00007f3013fc4203 in __poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f3013cd540f in ?? () from /usr/lib/libpulse.so.0
#2  0x00007f3013cc4d76 in pa_mainloop_poll () from /usr/lib/libpulse.so.0
#3  0x00007f3013cc67f9 in pa_mainloop_iterate () from /usr/lib/libpulse.so.0
#4  0x00007f3013cc68b0 in pa_mainloop_run () from /usr/lib/libpulse.so.0
#5  0x00007f3013cd520b in ?? () from /usr/lib/libpulse.so.0
#6  0x00007f300b95efb8 in ?? () from /usr/lib/libpulsecommon-0.9.21.so
#7  0x00007f30154fd971 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#8  0x00007f3013fd092d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#9  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f2fdfedd700 (LWP 3040)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f2ff0ecee83 in ?? () from /usr/lib/libxine.so.1
#2  0x00007f30154fd971 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#3  0x00007f3013fd092d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f301d0529a0 (LWP 2985)):
[KCrash Handler]
#6  deref (this=0x7fffd9b84340, __in_chrg=<value optimized out>) at ../../include/QtCore/../../src/corelib/arch/qatomic_x86_64.h:133
#7  QVariant::~QVariant (this=0x7fffd9b84340, __in_chrg=<value optimized out>) at kernel/qvariant.cpp:1407
#8  0x00007f2fdd842d94 in ?? () from /usr/lib/kde4/kipiplugin_jpeglossless.so
#9  0x00007f2fdd83a2cc in ?? () from /usr/lib/kde4/kipiplugin_jpeglossless.so
#10 0x000000000064fa27 in Digikam::DigikamApp::slotKipiPluginPlug (this=0x219d490) at /home/terri/Sources/digikam_20110131/core/digikam/digikamapp.cpp:2555
#11 0x00000000006360b2 in Digikam::DigikamApp::qt_metacall (this=0x219d490, _c=QMetaObject::InvokeMetaMethod, _id=33, _a=0x7fffd9b84a90) at /home/terri/Sources/digikam_20110131/build_1/core/digikam/digikamapp.moc:235
#12 0x00007f3015893b27 in QMetaObject::activate (sender=0x3c82d40, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x7fffd9b8414f) at kernel/qobject.cpp:3280
#13 0x00007f301b2d793d in KIPI::PluginLoader::replug (this=0x3c82d40) at /home/terri/Sources/digikam_20110131/build_1/extra/libkipi/libkipi/pluginloader.moc:103
#14 0x00007f301b2d8d0c in KIPI::PluginLoader::loadPlugins (this=0x3c82d40) at /home/terri/Sources/digikam_20110131/extra/libkipi/libkipi/pluginloader.cpp:340
#15 0x000000000064f22a in Digikam::DigikamApp::loadPlugins (this=0x219d490) at /home/terri/Sources/digikam_20110131/core/digikam/digikamapp.cpp:2495
#16 0x0000000000638a0c in Digikam::DigikamApp::DigikamApp (this=0x219d490, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>) at /home/terri/Sources/digikam_20110131/core/digikam/digikamapp.cpp:264
#17 0x000000000073d220 in main (argc=1, argv=0x7fffd9b855b8) at /home/terri/Sources/digikam_20110131/core/digikam/main.cpp:188

This bug may be a duplicate of or related to bug 265640.

Possible duplicates by query: bug 265640, bug 264603, bug 261177, bug 234021.

Reported using DrKonqi
Comment 1 Andrew Coles 2011-02-06 21:46:03 UTC
Where have you installed digikam/kipi-plugins?  If it's not /usr, you need to use the following recipe to force the correct versions of the libraries to be loaded:

export LOCALDIR=/path/where/you/have/installed/digikam

export PATH=$LOCALDIR/bin:$PATH
export LD_LIBRARY_PATH=$LOCALDIR/lib:$LD_LIBRARY_PATH

export KDEDIRS=$LOCALDIR:/usr

export KDE_FORK_SLAVES=1

kbuildsycoca4
digikam
Comment 2 bikon771 2011-02-12 16:34:11 UTC
Created attachment 57189 [details]
New crash information added by DrKonqi

digikam (1.8.0) on KDE Platform 4.6.00 (4.6.0) using Qt 4.7.0

When I start digiKam I see the splash screen then it crashes

-- Backtrace (Reduced):
#6  deref (this=0x7ffff8b76e60, __in_chrg=<value optimized out>) at ../../include/QtCore/../../src/corelib/arch/qatomic_x86_64.h:133
#7  QVariant::~QVariant (this=0x7ffff8b76e60, __in_chrg=<value optimized out>) at kernel/qvariant.cpp:1407
[...]
#10 0x00000000005c1573 in Digikam::DigikamApp::slotKipiPluginPlug (this=0x24ee5e0) at /build/buildd/digikam-1.8.0/digikam/digikamapp.cpp:2555
#11 0x00000000005d8b8d in Digikam::DigikamApp::qt_metacall (this=0x24ee5e0, _c=QMetaObject::InvokeMetaMethod, _id=24, _a=0x7ffff8b77530) at /build/buildd/digikam-1.8.0/obj-x86_64-linux-gnu/digikam/digikamapp.moc:230
[...]
#13 0x00000000005c7666 in Digikam::DigikamApp::loadPlugins (this=0x24ee5e0) at /build/buildd/digikam-1.8.0/digikam/digikamapp.cpp:2495
Comment 3 caulier.gilles 2011-02-12 18:00:19 UTC
Not reproducible here...

Gilles Caulier
Comment 4 Andrew Coles 2011-02-12 20:57:54 UTC
Once again, looks like a crash from running the beta version of digikam, with an older version of digikam and/or kipi-plugins installed.  bikon771 - see my earlier post in this bug thread.  It should, in theory, allow you to run the digikam beta without uninstalling your older version, though note this is entirely unsupported.
Comment 5 caulier.gilles 2011-02-18 10:33:50 UTC
*** Bug 266576 has been marked as a duplicate of this bug. ***
Comment 6 caulier.gilles 2011-02-18 10:36:09 UTC
I can reproduce the crash here, with 2.0.0, but only when plugins are reloaded after to open Setup dialog.

I identified that crash is about JPEGLossLess plugin actions.

Gilles Caulier
Comment 7 caulier.gilles 2011-02-18 10:56:56 UTC
My trace :

Thread 1 (Thread 0xafaa7930 (LWP 23827)):
[KCrash Handler]
#6  0xb4dfab00 in ?? () from /usr/lib/libQtGui.so.4
#7  0xb4e4054b in QWidget::insertAction(QAction*, QAction*) () from /usr/lib/libQtGui.so.4
#8  0xb5ad1130 in ?? () from /usr/lib/libkdeui.so.5
#9  0xb5ad2631 in ?? () from /usr/lib/libkdeui.so.5
#10 0xb5ad287c in ?? () from /usr/lib/libkdeui.so.5
#11 0xb5ad28f4 in ?? () from /usr/lib/libkdeui.so.5
#12 0xb5ad28f4 in ?? () from /usr/lib/libkdeui.so.5
#13 0xb5acb3e1 in KXMLGUIFactory::plugActionList(KXMLGUIClient*, QString const&, QList<QAction*> const&) () from /usr/lib/libkdeui.so.5
#14 0xb5ac2119 in KXMLGUIClient::plugActionList(QString const&, QList<QAction*> const&) () from /usr/lib/libkdeui.so.5
#15 0x0824bf29 in Digikam::DigikamApp::slotKipiPluginPlug (this=0x8bd6828) at /mnt/data/Devel/GIT/2.x/core/digikam/digikamapp.cpp:2722
#16 0x08232bec in Digikam::DigikamApp::qt_metacall (this=0x8bd6828, _c=QMetaObject::InvokeMetaMethod, _id=30, _a=0xbfaa05ec) at /mnt/data/Devel/GIT/2.x/core/digikam/digikamapp.moc:231
#17 0xb47b9ded in QMetaObject::metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib/libQtCore.so.4
#18 0xb47c8c5a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#19 0xb6fff465 in KIPI::PluginLoader::replug (this=0x9285678) at /mnt/data/Devel/GIT/2.x/extra/libkipi/libkipi/pluginloader.moc:103
#20 0xb7000f8e in KIPI::ConfigWidget::apply (this=0xb687148) at /mnt/data/Devel/GIT/2.x/extra/libkipi/libkipi/pluginloader.cpp:447
#21 0x08128545 in Digikam::SetupPlugins::applyPlugins (this=0xb684e48) at /mnt/data/Devel/GIT/2.x/core/utilities/setup/setupplugins.cpp:112
#22 0x08109d9b in Digikam::Setup::slotOkClicked (this=0xa87ec50) at /mnt/data/Devel/GIT/2.x/core/utilities/setup/setup.cpp:452
#23 0x08104c52 in Digikam::Setup::qt_metacall (this=0xa87ec50, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0xbfaa07bc) at /mnt/data/Devel/GIT/2.x/core/digikam/setup.moc:72

It crash when JPEGLossLess actions are managed by digiKam plugin loader...

If i uninstall JPEGLossLess plugin, digiKam do not crash

Gilles Caulier
Comment 8 caulier.gilles 2011-02-18 11:27:17 UTC
Valgrind cry about an invalid Action deletion :

==27669== Invalid read of size 4
==27669==    at 0x62D2537: QWidget::insertAction(QAction*, QAction*) (in /usr/lib/libQtGui.so.4.6.2)
==27669==    by 0x602712F: ??? (in /usr/lib/libkdeui.so.5.4.0)
==27669==    by 0x6028630: ??? (in /usr/lib/libkdeui.so.5.4.0)
==27669==    by 0x6FDBFF3: ??? (in /usr/lib/libkdecore.so.5.4.0)
==27669==  Address 0xf3878b4 is 4 bytes inside a block of size 12 free'd
==27669==    at 0x40236AD: operator delete(void*) (vg_replace_malloc.c:346)
==27669==    by 0x5DE1198: KAction::~KAction() (in /usr/lib/libkdeui.so.5.4.0)
==27669==    by 0x5DDA78D: KActionCollection::clear() (in /usr/lib/libkdeui.so.5.4.0)
==27669==    by 0x824AB79: Digikam::DigikamApp::slotKipiPluginPlug() (digikamapp.cpp:2563)
==27669==    by 0x8232BEB: Digikam::DigikamApp::qt_metacall(QMetaObject::Call, int, void**) (digikamapp.moc:231)
==27669==    by 0x714EDEC: QMetaObject::metacall(QObject*, QMetaObject::Call, int, void**) (in /usr/lib/libQtCore.so.4.6.2)
==27669== 
==27669== Invalid read of size 4
==27669==    at 0x628CAFE: ??? (in /usr/lib/libQtGui.so.4.6.2)
==27669==    by 0x62D254A: QWidget::insertAction(QAction*, QAction*) (in /usr/lib/libQtGui.so.4.6.2)
==27669==    by 0x602712F: ??? (in /usr/lib/libkdeui.so.5.4.0)
==27669==    by 0x6028630: ??? (in /usr/lib/libkdeui.so.5.4.0)
==27669==    by 0x6FDBFF3: ??? (in /usr/lib/libkdecore.so.5.4.0)
==27669==  Address 0xb0 is not stack'd, malloc'd or (recently) free'd
==27669== 
KCrash: Application 'digikam' crashing...
sock_file=/home/gilles/.kde4/socket-localhost.localdomain/kdeinit4__0

Gilles Caulier
Comment 9 caulier.gilles 2011-02-18 11:30:17 UTC
==27669==    by 0x824AB79: Digikam::DigikamApp::slotKipiPluginPlug()
(digikamapp.cpp:2563)

Line is here :

    if (d->kipipluginsActionCollection)
    {
        d->kipipluginsActionCollection->clear();       /// <<<<<<< HERE
        delete d->kipipluginsActionCollection;
    }

Gilles Caulier
Comment 10 caulier.gilles 2011-02-18 12:38:15 UTC
Git commit e395cd0b3d998e7dec5bf3551ce015da6def5eaf by Gilles Caulier.
Committed on 18/02/2011 at 12:33.
Pushed by cgilles into branch 'development/2.0'.

fix crash with Kipi-plugins setup from digiKam (not reproducible with KPhotoAlbum)
the problem is not with kipi-plugins, but in digiKam core, especially the way to manage plugin Actions
deletion with Action Collection dedicated to kipi. There is an order to respect.
With this commit i fix also a missing clear of list of plugin action when plugins are replug from manager.
CCBUGS: 265641

M  +27   -28   digikam/digikamapp.cpp     

http://commits.kde.org/digikam/e395cd0b3d998e7dec5bf3551ce015da6def5eaf
Comment 11 caulier.gilles 2011-02-18 13:11:50 UTC
Git commit 97534ddb6558504bfada066deba5f5c322e1da86 by Gilles Caulier.
Committed on 18/02/2011 at 13:09.
Pushed by cgilles into branch 'master'.

bacport commit

http://commits.kde.org/digikam/e395cd0b3d998e7dec5bf3551ce015da6def5eaf

... from 2x branch

BUGS: 265641

M  +32   -26   digikam/digikamapp.cpp     

http://commits.kde.org/digikam/97534ddb6558504bfada066deba5f5c322e1da86
Comment 12 caulier.gilles 2011-06-22 09:54:42 UTC
*** Bug 271618 has been marked as a duplicate of this bug. ***