Bug 317437 - digikam crashes on startup
Summary: digikam crashes on startup
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Preview-Video (show other bugs)
Version: unspecified
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-03-27 12:29 UTC by Jiri Slaby
Modified: 2018-08-21 10:43 UTC (History)
6 users (show)

See Also:
Latest Commit:
Version Fixed In: 6.0.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jiri Slaby 2013-03-27 12:29:39 UTC
Application: digikam (3.1.0)
KDE Platform Version: 4.10.1
Qt Version: 4.8.4
Operating System: Linux 3.9.0-rc4-next-20130325_64+ x86_64
Distribution: "openSUSE 13.1 Milestone 0 (x86_64)"

-- Information about the crash:
When digikam initializes itself, it just crashes every time.

The crash can be reproduced every time.

-- Backtrace:
Application: digiKam (digikam), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fb2e8118800 (LWP 1923))]

Thread 4 (Thread 0x7fb2bfae6700 (LWP 1925)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fb2e335861b in wait (time=18446744073709551615, this=0x2023380) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x2023278, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00000000005d4b78 in Digikam::ScanController::run (this=0x2023010) at /usr/src/debug/digikam-3.1.0/core/digikam/database/scancontroller.cpp:705
#4  0x00007fb2e33580bc in QThreadPrivate::start (arg=0x2023010) at thread/qthread_unix.cpp:338
#5  0x00007fb2df83ce0f in start_thread (arg=0x7fb2bfae6700) at pthread_create.c:308
#6  0x00007fb2e18c27dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 3 (Thread 0x7fb2bf2e5700 (LWP 1926)):
#0  0x00007fb2e18b987d in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fb2d9521aa4 in g_main_context_poll (n_fds=1, fds=0x7fb2b00029b0, timeout=-1, context=0x7fb2b00009a0, priority=<optimized out>) at gmain.c:3584
#2  g_main_context_iterate (context=context@entry=0x7fb2b00009a0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3285
#3  0x00007fb2d9521bc4 in g_main_context_iteration (context=0x7fb2b00009a0, may_block=1) at gmain.c:3351
#4  0x00007fb2e3482186 in QEventDispatcherGlib::processEvents (this=0x7fb2b00008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#5  0x00007fb2e3452a5f in QEventLoop::processEvents (this=this@entry=0x7fb2bf2e4d50, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007fb2e3452ce8 in QEventLoop::exec (this=0x7fb2bf2e4d50, flags=...) at kernel/qeventloop.cpp:204
#7  0x00007fb2e33558e0 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:542
#8  0x00007fb2e34345ff in QInotifyFileSystemWatcherEngine::run (this=0x1eb2da0) at io/qfilesystemwatcher_inotify.cpp:256
#9  0x00007fb2e33580bc in QThreadPrivate::start (arg=0x1eb2da0) at thread/qthread_unix.cpp:338
#10 0x00007fb2df83ce0f in start_thread (arg=0x7fb2bf2e5700) at pthread_create.c:308
#11 0x00007fb2e18c27dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 2 (Thread 0x7fb2beae4700 (LWP 1928)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fb2e335861b in wait (time=18446744073709551615, this=0x2207450) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x22761c8, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007fb2e573aee9 in Digikam::ParkingThread::run (this=0x22761b0) at /usr/src/debug/digikam-3.1.0/core/libs/threads/threadmanager.cpp:119
#4  0x00007fb2e33580bc in QThreadPrivate::start (arg=0x22761b0) at thread/qthread_unix.cpp:338
#5  0x00007fb2df83ce0f in start_thread (arg=0x7fb2beae4700) at pthread_create.c:308
#6  0x00007fb2e18c27dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 1 (Thread 0x7fb2e8118800 (LWP 1923)):
[KCrash Handler]
#6  gst_audio_clock_new (name=name@entry=0x7fb2ab16746a "GstPulseSinkClock", func=func@entry=0x7fb2ab158be0 <gst_pulsesink_get_time>, user_data=user_data@entry=0x3217750, destroy_notify=0x4) at gstaudioclock.c:143
#7  0x00007fb2ab158174 in gst_pulsesink_init (pulsesink=0x3217750, klass=<optimized out>) at pulsesink.c:2220
#8  0x00007fb2d8bdd29f in g_type_create_instance (type=<optimized out>) at gtype.c:1890
#9  0x00007fb2d8bc1b68 in g_object_constructor (type=<optimized out>, n_construct_properties=2, construct_params=0x33e4400) at gobject.c:1855
#10 0x00007fb2d8bc3131 in g_object_newv (object_type=object_type@entry=54413664, n_parameters=n_parameters@entry=1, parameters=parameters@entry=0x3216a00) at gobject.c:1719
#11 0x00007fb2d8bc3920 in g_object_new_valist (object_type=object_type@entry=54413664, first_property_name=first_property_name@entry=0x7fb2d60d0ba2 "name", var_args=var_args@entry=0x7fffdccb1488) at gobject.c:1836
#12 0x00007fb2d8bc3c54 in g_object_new (object_type=54413664, first_property_name=first_property_name@entry=0x7fb2d60d0ba2 "name") at gobject.c:1551
#13 0x00007fb2d60599d5 in gst_element_factory_create (factory=factory@entry=0x31e1480, name=name@entry=0x33e4850 "autoaudiosink0-actual-sink-pulse") at gstelementfactory.c:385
#14 0x00007fb2aaaf7524 in gst_auto_audio_sink_create_element_with_pretty_name (factory=0x31e1480, sink=0x33eb020) at gstautoaudiosink.c:230
#15 gst_auto_audio_sink_find_best (sink=0x33eb020) at gstautoaudiosink.c:261
#16 gst_auto_audio_sink_detect (sink=0x33eb020) at gstautoaudiosink.c:342
#17 gst_auto_audio_sink_change_state (element=0x33eb020, transition=GST_STATE_CHANGE_NULL_TO_READY) at gstautoaudiosink.c:390
#18 0x00007fb2d605891c in gst_element_change_state (element=element@entry=0x33eb020, transition=transition@entry=GST_STATE_CHANGE_NULL_TO_READY) at gstelement.c:2761
#19 0x00007fb2d6059268 in gst_element_set_state_func (element=0x33eb020, state=GST_STATE_READY) at gstelement.c:2717
#20 0x00007fb2bc126636 in Phonon::Gstreamer::DeviceManager::canOpenDevice (this=<optimized out>, element=0x33eb020) at /usr/src/debug/phonon-backend-gstreamer-4.6.3/gstreamer/devicemanager.cpp:176
#21 0x00007fb2bc12683d in Phonon::Gstreamer::DeviceManager::createAudioSink (this=this@entry=0x2116a90, category=category@entry=Phonon::NoCategory) at /usr/src/debug/phonon-backend-gstreamer-4.6.3/gstreamer/devicemanager.cpp:233
#22 0x00007fb2bc1269fa in Phonon::Gstreamer::DeviceManager::createAudioSink (this=this@entry=0x2116a90, category=category@entry=Phonon::NoCategory) at /usr/src/debug/phonon-backend-gstreamer-4.6.3/gstreamer/devicemanager.cpp:267
#23 0x00007fb2bc12754a in Phonon::Gstreamer::DeviceManager::updateDeviceList (this=this@entry=0x2116a90) at /usr/src/debug/phonon-backend-gstreamer-4.6.3/gstreamer/devicemanager.cpp:417
#24 0x00007fb2bc12811e in Phonon::Gstreamer::DeviceManager::DeviceManager (this=0x2116a90, backend=<optimized out>) at /usr/src/debug/phonon-backend-gstreamer-4.6.3/gstreamer/devicemanager.cpp:133
#25 0x00007fb2bc1210b2 in Phonon::Gstreamer::Backend::Backend (this=0x21c6370, parent=<optimized out>) at /usr/src/debug/phonon-backend-gstreamer-4.6.3/gstreamer/backend.cpp:116
#26 0x00007fb2bc1213c3 in qt_plugin_instance () at /usr/src/debug/phonon-backend-gstreamer-4.6.3/gstreamer/backend.cpp:44
#27 0x00007fb2e34386db in QPluginLoader::instance (this=0x7fffdccb1df0) at plugin/qpluginloader.cpp:204
#28 0x00007fb2bc7eddfc in Phonon::KdePlatformPlugin::createBackend (this=this@entry=0x23aa070, newService=...) at /usr/src/debug/kde-runtime-4.10.1/phonon/platform_kde/kdeplatformplugin.cpp:130
#29 0x00007fb2bc7ee7bd in Phonon::KdePlatformPlugin::createBackend (this=0x23aa070) at /usr/src/debug/kde-runtime-4.10.1/phonon/platform_kde/kdeplatformplugin.cpp:183
#30 0x00007fb2e789d899 in Phonon::FactoryPrivate::createBackend (this=0x20bcd00) at /usr/src/debug/phonon-4.6.0/phonon/factory.cpp:130
#31 0x00007fb2e789e0b7 in Phonon::Factory::backend (createWhenNull=64, createWhenNull@entry=true) at /usr/src/debug/phonon-4.6.0/phonon/factory.cpp:460
#32 0x00007fb2e789e432 in Phonon::Factory::createAudioOutput (parent=0x226e340) at /usr/src/debug/phonon-4.6.0/phonon/factory.cpp:356
#33 0x00007fb2e789745e in createBackendObject (this=0x20eda70) at /usr/src/debug/phonon-4.6.0/phonon/audiooutput.cpp:138
#34 Phonon::AudioOutputPrivate::createBackendObject (this=0x20eda70) at /usr/src/debug/phonon-4.6.0/phonon/audiooutput.cpp:133
#35 0x00007fb2e78947a7 in Phonon::AudioOutputPrivate::init (this=0x20eda70, c=Phonon::VideoCategory) at /usr/src/debug/phonon-4.6.0/phonon/audiooutput.cpp:111
#36 0x00007fb2e78c0343 in ensureCreated (this=0x237c480) at /usr/src/debug/phonon-4.6.0/phonon/videoplayer.cpp:67
#37 Phonon::VideoPlayerPrivate::ensureCreated (this=0x237c480) at /usr/src/debug/phonon-4.6.0/phonon/videoplayer.cpp:60
#38 0x00007fb2e78c059d in Phonon::VideoPlayer::mediaObject (this=0x237c3f0) at /usr/src/debug/phonon-4.6.0/phonon/videoplayer.cpp:102
#39 0x0000000000660f1b in Digikam::MediaPlayerView::MediaPlayerView (this=0x22e49c0, parent=<optimized out>) at /usr/src/debug/digikam-3.1.0/core/digikam/views/mediaplayerview.cpp:169
#40 0x0000000000656679 in Digikam::StackedView::StackedView (this=0x22ec140, parent=<optimized out>) at /usr/src/debug/digikam-3.1.0/core/digikam/views/stackedview.cpp:111
#41 0x000000000065cfba in Digikam::DigikamView::DigikamView (this=0x23ef8d0, parent=0x20ec270, modelCollection=0x20adc70) at /usr/src/debug/digikam-3.1.0/core/digikam/views/digikamview.cpp:251
#42 0x00000000005819fa in Digikam::DigikamApp::setupView (this=this@entry=0x20ec270) at /usr/src/debug/digikam-3.1.0/core/digikam/main/digikamapp.cpp:521
#43 0x000000000059971b in Digikam::DigikamApp::DigikamApp (this=0x20ec270, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at /usr/src/debug/digikam-3.1.0/core/digikam/main/digikamapp.cpp:257
#44 0x0000000000498941 in main (argc=3, argv=0x7fffdccb2f48) at /usr/src/debug/digikam-3.1.0/core/digikam/main/main.cpp:189

Reported using DrKonqi
Comment 1 Jiri Slaby 2013-03-27 12:55:01 UTC
I see, this is a problem of digikam to be linked against *both* gst 0.1 and 1.0.

GLib-GObject-WARNING **: cannot register existing type `GstAudioClock'
GLib-CRITICAL **: g_once_init_leave: assertion `result != 0' failed
GLib-GObject-CRITICAL **: g_object_new: assertion `G_TYPE_IS_OBJECT (object_type)' failed

$ ldd /usr/bin/digikam |grep gst
        libgstreamer-0.10.so.0 => /usr/lib64/libgstreamer-0.10.so.0 (0x00007f7b1bf25000)
        libgstapp-0.10.so.0 => /usr/lib64/libgstapp-0.10.so.0 (0x00007f7b1bd18000)
        libgstvideo-0.10.so.0 => /usr/lib64/libgstvideo-0.10.so.0 (0x00007f7b1bafc000)
        libgstbase-0.10.so.0 => /usr/lib64/libgstbase-0.10.so.0 (0x00007f7b13d9e000)
        libgstapp-1.0.so.0 => /usr/lib64/libgstapp-1.0.so.0 (0x00007f7b10339000)
        libgstpbutils-1.0.so.0 => /usr/lib64/libgstpbutils-1.0.so.0 (0x00007f7b10114000)
        libgstvideo-1.0.so.0 => /usr/lib64/libgstvideo-1.0.so.0 (0x00007f7b0fed2000)
        libgstaudio-1.0.so.0 => /usr/lib64/libgstaudio-1.0.so.0 (0x00007f7b0fc88000)
        libgstbase-1.0.so.0 => /usr/lib64/libgstbase-1.0.so.0 (0x00007f7b0fa36000)
        libgstreamer-1.0.so.0 => /usr/lib64/libgstreamer-1.0.so.0 (0x00007f7b0f740000)
        libgsttag-1.0.so.0 => /usr/lib64/libgsttag-1.0.so.0 (0x00007f7b0e332000)
Comment 2 Jiri Slaby 2013-03-28 09:32:57 UTC
AFAICS gst 0.1 comes from opencv and gst 1.0 from qt webkit...
Comment 3 Myriam Schweingruber 2013-04-13 07:51:35 UTC
The problem is upstream in gstreamer, not in the phonon backend.
Comment 4 Myriam Schweingruber 2013-04-14 00:01:23 UTC
*** Bug 318298 has been marked as a duplicate of this bug. ***
Comment 5 caulier.gilles 2018-08-21 10:43:58 UTC
Problem is not reproducible since digiKam use QtAv framework +ffmpeg to handle video files.