Bug 230504 - Phonon VideoWidget using Xine causes application to crash [xshm_open_plugin, load_video_driver, ..., xine_open_video_driver, Phonon::Xine::VideoWidgetXT::createVideoPort]
Summary: Phonon VideoWidget using Xine causes application to crash [xshm_open_plugin, ...
Status: RESOLVED UPSTREAM
Alias: None
Product: Phonon
Classification: Frameworks and Libraries
Component: Xine backend (show other bugs)
Version: 4.3.1 (KDE 4.4)
Platform: Fedora RPMs Linux
: NOR crash
Target Milestone: ---
Assignee: Matthias Kretz
URL:
Keywords:
: 256617 257142 262773 263138 266174 (view as bug list)
Depends on:
Blocks:
 
Reported: 2010-03-12 22:16 UTC by John Schmitt
Modified: 2011-06-05 22:09 UTC (History)
8 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 John Schmitt 2010-03-12 22:16:44 UTC
Application: digikam (1.1.0)
KDE Platform Version: 4.4.00 (KDE 4.4.0)
Qt Version: 4.6.2
Operating System: Linux 2.6.32.9-67.fc12.x86_64 x86_64
Distribution (Platform): Fedora RPMs

-- Information about the crash:
Every time I launch digikam, it crashes after the splash screen.

I've tried combinations of:
- deleting kdmrc from ~/.kde/share/config/
- deleting ~/Pictures
- selecting only the defaults when the wizards prompts me
- uninstalling kipi-plugins and kipi-plugins-libs
- creating a new account on the computer with default KDE settings

I can try to try fixes, especially if they come in the form of RPMs for fedora 12.


The crash can be reproduced every time.

 -- Backtrace:
Application: digiKam (digikam), signal: Segmentation fault
82	T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)
[Current thread is 1 (Thread 0x7ff1300e78c0 (LWP 8725))]

Thread 9 (Thread 0x7ff125653710 (LWP 8733)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x000000344d67189b in wait (this=<value optimized out>, mutex=0x1baaad0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x1baaad0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x00000000006707bb in Digikam::ScanController::run (this=0x1a08ef0) at /usr/src/debug/digikam-1.1.0/digikam/scancontroller.cpp:502
#4  0x000000344d6709a5 in QThreadPrivate::start (arg=0x1a08ef0) at thread/qthread_unix.cpp:248
#5  0x0000003442606a3a in start_thread (arg=<value optimized out>) at pthread_create.c:297
#6  0x0000003441ade67d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 8 (Thread 0x7ff124a46710 (LWP 8734)):
#0  0x00007fff767ffa01 in clock_gettime ()
#1  0x0000003442e03e4f in clock_gettime (clock_id=1, tp=0x7ff124a45a10) at ../sysdeps/unix/clock_gettime.c:100
#2  0x000000344d77a6ef in qt_gettime () at kernel/qcore_unix.cpp:111
#3  0x000000344d77e8ed in QTimerInfoList::updateCurrentTime (this=0x7ff110002060) at kernel/qeventdispatcher_unix.cpp:340
#4  0x000000344d77e915 in QTimerInfoList::timerWait (this=0x7ff110002060, tm=...) at kernel/qeventdispatcher_unix.cpp:443
#5  0x000000344d77d2ad in timerSourcePrepareHelper (src=<value optimized out>, timeout=0x7ff124a45b2c) at kernel/qeventdispatcher_glib.cpp:136
#6  0x000000344d77d355 in timerSourcePrepare (source=<value optimized out>, timeout=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#7  0x0000003443e3c41a in IA__g_main_context_prepare (context=0x7ff1100009b0, priority=<value optimized out>) at gmain.c:2280
#8  0x0000003443e3c7f1 in g_main_context_iterate (context=0x7ff1100009b0, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>) at gmain.c:2571
#9  0x0000003443e3cd1a in IA__g_main_context_iteration (context=0x7ff1100009b0, may_block=1) at gmain.c:2654
#10 0x000000344d77d0b6 in QEventDispatcherGlib::processEvents (this=0x7ff1100008c0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:414
#11 0x000000344d756192 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#12 0x000000344d75645c in QEventLoop::exec (this=0x7ff124a45cc0, flags=...) at kernel/qeventloop.cpp:201
#13 0x000000344d66e8d9 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:487
#14 0x000000344d6709a5 in QThreadPrivate::start (arg=0x19fee40) at thread/qthread_unix.cpp:248
#15 0x0000003442606a3a in start_thread (arg=<value optimized out>) at pthread_create.c:297
#16 0x0000003441ade67d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#17 0x0000000000000000 in ?? ()

Thread 7 (Thread 0x7ff11ffff710 (LWP 8735)):
#0  0x00007fff767ffa01 in clock_gettime ()
#1  0x0000003442e03e4f in clock_gettime (clock_id=1, tp=0x7ff11fffea10) at ../sysdeps/unix/clock_gettime.c:100
#2  0x000000344d77a6ef in qt_gettime () at kernel/qcore_unix.cpp:111
#3  0x000000344d77e8ed in QTimerInfoList::updateCurrentTime (this=0x7ff118001e60) at kernel/qeventdispatcher_unix.cpp:340
#4  0x000000344d77e915 in QTimerInfoList::timerWait (this=0x7ff118001e60, tm=...) at kernel/qeventdispatcher_unix.cpp:443
#5  0x000000344d77d2ad in timerSourcePrepareHelper (src=<value optimized out>, timeout=0x7ff11fffeb2c) at kernel/qeventdispatcher_glib.cpp:136
#6  0x000000344d77d355 in timerSourcePrepare (source=<value optimized out>, timeout=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#7  0x0000003443e3c41a in IA__g_main_context_prepare (context=0x7ff1180009b0, priority=<value optimized out>) at gmain.c:2280
#8  0x0000003443e3c7f1 in g_main_context_iterate (context=0x7ff1180009b0, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>) at gmain.c:2571
#9  0x0000003443e3cd1a in IA__g_main_context_iteration (context=0x7ff1180009b0, may_block=1) at gmain.c:2654
#10 0x000000344d77d0b6 in QEventDispatcherGlib::processEvents (this=0x7ff1180008c0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:414
#11 0x000000344d756192 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#12 0x000000344d75645c in QEventLoop::exec (this=0x7ff11fffecc0, flags=...) at kernel/qeventloop.cpp:201
#13 0x000000344d66e8d9 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:487
#14 0x000000344d6709a5 in QThreadPrivate::start (arg=0x1c24be0) at thread/qthread_unix.cpp:248
#15 0x0000003442606a3a in start_thread (arg=<value optimized out>) at pthread_create.c:297
#16 0x0000003441ade67d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#17 0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7ff11f5fe710 (LWP 8736)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x000000344d67189b in wait (this=<value optimized out>, mutex=0x1bfb478, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x1bfb478, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x0000003f34b9ab22 in Digikam::LoadSaveThread::run (this=0x1bfb460) at /usr/src/debug/digikam-1.1.0/libs/threadimageio/loadsavethread.cpp:131
#4  0x000000344d6709a5 in QThreadPrivate::start (arg=0x1bfb460) at thread/qthread_unix.cpp:248
#5  0x0000003442606a3a in start_thread (arg=<value optimized out>) at pthread_create.c:297
#6  0x0000003441ade67d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7ff11ebfd710 (LWP 8737)):
#0  0x000000344d77cd23 in socketNotifierSourcePrepare (timeout=0x7ff11ebfcb2c) at kernel/qeventdispatcher_glib.cpp:73
#1  0x0000003443e3c41a in IA__g_main_context_prepare (context=0x7ff10c0009b0, priority=<value optimized out>) at gmain.c:2280
#2  0x0000003443e3c7f1 in g_main_context_iterate (context=0x7ff10c0009b0, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>) at gmain.c:2571
#3  0x0000003443e3cd1a in IA__g_main_context_iteration (context=0x7ff10c0009b0, may_block=1) at gmain.c:2654
#4  0x000000344d77d0b6 in QEventDispatcherGlib::processEvents (this=0x7ff10c0008c0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:414
#5  0x000000344d756192 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#6  0x000000344d75645c in QEventLoop::exec (this=0x7ff11ebfccc0, flags=...) at kernel/qeventloop.cpp:201
#7  0x000000344d66e8d9 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:487
#8  0x000000344d6709a5 in QThreadPrivate::start (arg=0x1d18c00) at thread/qthread_unix.cpp:248
#9  0x0000003442606a3a in start_thread (arg=<value optimized out>) at pthread_create.c:297
#10 0x0000003441ade67d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7ff11e1fc710 (LWP 8738)):
#0  0x00007fff767ffa01 in clock_gettime ()
#1  0x0000003442e03e4f in clock_gettime (clock_id=1, tp=0x7ff11e1fba10) at ../sysdeps/unix/clock_gettime.c:100
#2  0x000000344d77a6ef in qt_gettime () at kernel/qcore_unix.cpp:111
#3  0x000000344d77e8ed in QTimerInfoList::updateCurrentTime (this=0x7ff108001e60) at kernel/qeventdispatcher_unix.cpp:340
#4  0x000000344d77e915 in QTimerInfoList::timerWait (this=0x7ff108001e60, tm=...) at kernel/qeventdispatcher_unix.cpp:443
#5  0x000000344d77d2ad in timerSourcePrepareHelper (src=<value optimized out>, timeout=0x7ff11e1fbb2c) at kernel/qeventdispatcher_glib.cpp:136
#6  0x000000344d77d355 in timerSourcePrepare (source=<value optimized out>, timeout=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#7  0x0000003443e3c41a in IA__g_main_context_prepare (context=0x7ff1080009b0, priority=<value optimized out>) at gmain.c:2280
#8  0x0000003443e3c7f1 in g_main_context_iterate (context=0x7ff1080009b0, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>) at gmain.c:2571
#9  0x0000003443e3cd1a in IA__g_main_context_iteration (context=0x7ff1080009b0, may_block=1) at gmain.c:2654
#10 0x000000344d77d0b6 in QEventDispatcherGlib::processEvents (this=0x7ff1080008c0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:414
#11 0x000000344d756192 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#12 0x000000344d75645c in QEventLoop::exec (this=0x7ff11e1fbcc0, flags=...) at kernel/qeventloop.cpp:201
#13 0x000000344d66e8d9 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:487
#14 0x000000344d6709a5 in QThreadPrivate::start (arg=0x1c06bf0) at thread/qthread_unix.cpp:248
#15 0x0000003442606a3a in start_thread (arg=<value optimized out>) at pthread_create.c:297
#16 0x0000003441ade67d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#17 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7ff11d7fb710 (LWP 8739)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x000000344d67189b in wait (this=<value optimized out>, mutex=0x1b09a48, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x1b09a48, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
#3  0x0000003f34b9ab22 in Digikam::LoadSaveThread::run (this=0x1b09a30) at /usr/src/debug/digikam-1.1.0/libs/threadimageio/loadsavethread.cpp:131
#4  0x000000344d6709a5 in QThreadPrivate::start (arg=0x1b09a30) at thread/qthread_unix.cpp:248
#5  0x0000003442606a3a in start_thread (arg=<value optimized out>) at pthread_create.c:297
#6  0x0000003441ade67d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7ff106681710 (LWP 8750)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:211
#1  0x00007ff11c1534b1 in metronom_sync_loop (this=0x2004680) at metronom.c:870
#2  0x0000003442606a3a in start_thread (arg=<value optimized out>) at pthread_create.c:297
#3  0x0000003441ade67d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7ff1300e78c0 (LWP 8725)):
[KCrash Handler]
#5  xshm_open_plugin (class_gen=<value optimized out>, visual_gen=<value optimized out>) at video_out_xcbshm.c:1161
#6  0x00007ff11c15bc33 in _load_video_driver (this=<value optimized out>, id=0x0, visual_type=11, visual=<value optimized out>) at load_plugins.c:1563
#7  _x_load_video_output_plugin (this=<value optimized out>, id=0x0, visual_type=11, visual=<value optimized out>) at load_plugins.c:1605
#8  0x00007ff11c15bcc9 in xine_open_video_driver (this=0x1fbf2f0, id=<value optimized out>, visual_type=<value optimized out>, visual=<value optimized out>) at load_plugins.c:1627
#9  0x00007ff105a66a8f in Phonon::Xine::VideoWidgetXT::createVideoPort (this=0x1f7e480) at /usr/src/debug/phonon-4.3.80/xine/videowidget.cpp:185
#10 0x00007ff105a6707f in Phonon::Xine::VideoWidget::VideoWidget (this=0x2011e60, parent=<value optimized out>) at /usr/src/debug/phonon-4.3.80/xine/videowidget.cpp:221
#11 0x00007ff105a50be9 in Phonon::Xine::Backend::createObject (this=<value optimized out>, c=<value optimized out>, parent=<value optimized out>, args=<value optimized out>)
    at /usr/src/debug/phonon-4.3.80/xine/backend.cpp:181
#12 0x0000003f2ec35ff2 in Phonon::Factory::createVideoWidget (parent=0x2017f60) at /usr/src/debug/phonon-4.3.80/phonon/factory.cpp:326
#13 0x0000003f2ec3a906 in Phonon::VideoWidgetPrivate::createBackendObject (this=0x1ba52b0) at /usr/src/debug/phonon-4.3.80/phonon/videowidget.cpp:78
#14 0x0000003f2ec39974 in Phonon::VideoWidget::VideoWidget (this=0x2017f60, parent=<value optimized out>) at /usr/src/debug/phonon-4.3.80/phonon/videowidget.cpp:48
#15 0x0000003f2ec3aece in Phonon::VideoPlayerPrivate::init (this=0x1ec5870, q=0x1ec6130, category=33652576) at /usr/src/debug/phonon-4.3.80/phonon/videoplayer.cpp:61
#16 0x0000003f2ec3b0b0 in Phonon::VideoPlayer::VideoPlayer (this=0x1ec6130, category=VideoCategory, parent=0x0) at /usr/src/debug/phonon-4.3.80/phonon/videoplayer.cpp:75
#17 0x000000000066177c in Digikam::MediaPlayerView::MediaPlayerView (this=0x1ec3350, parent=<value optimized out>) at /usr/src/debug/digikam-1.1.0/digikam/mediaplayerview.cpp:124
#18 0x00000000005f2fa1 in Digikam::AlbumWidgetStack::AlbumWidgetStack (this=0x1c526e0, parent=<value optimized out>) at /usr/src/debug/digikam-1.1.0/digikam/albumwidgetstack.cpp:109
#19 0x00000000006239a2 in Digikam::DigikamView::DigikamView (this=0x1bd4900, parent=0x1be4ba0) at /usr/src/debug/digikam-1.1.0/digikam/digikamview.cpp:215
#20 0x000000000060b132 in Digikam::DigikamApp::setupView (this=0x1be4ba0) at /usr/src/debug/digikam-1.1.0/digikam/digikamapp.cpp:493
#21 0x00000000006198b0 in Digikam::DigikamApp::DigikamApp (this=0x1be4ba0, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>)
    at /usr/src/debug/digikam-1.1.0/digikam/digikamapp.cpp:232
#22 0x00000000006f5de7 in main (argc=<value optimized out>, argv=<value optimized out>) at /usr/src/debug/digikam-1.1.0/digikam/main.cpp:172

Possible duplicates by query: bug 227773.

Reported using DrKonqi
Comment 1 Dario Andres 2010-03-14 13:41:01 UTC
This looks related to bug 219419. 
- Are you using the latest Phonon and xine packages ? 
- Does this still happen after rebooting ?
Regards
Comment 2 John Schmitt 2010-03-16 18:43:02 UTC
When running digikam on the monitor attached to the computer I see no crashes.  Digikam crashes when launched inside a VNC session regardless of how recently I've logged in or rebooted.  I've used digikam for years and saw problems only on fedora 11 and fedora 12.  This machine did not run fedora 10 but jumped from fedora 9 to fedora 11.  Rebooting this machine frequently is not allowed as it is the media and mail server in my house.
Comment 3 Dario Andres 2010-03-19 13:04:00 UTC
As the crash is related to the Xine multimedia library you could try to set the Phonon backend (SystemSettings/Multimedia/Backend tab) to GStreamer; then you can start Digikam (hopefully without crashes)

@Gilles: is there a way to disable the MediaPlayerView/VideoWidget in Digikam ?

Regards
Comment 4 caulier.gilles 2010-03-19 13:43:14 UTC
no digikam cannot disable xine components

Gilles
Comment 5 John Schmitt 2010-03-20 07:23:18 UTC
Have you at duplicated this now?
Comment 6 John Schmitt 2010-03-29 19:39:57 UTC
Setting the backend to gstreamer allows digikam to run inside a VNC session.

http://bugs.xine-project.org/show_bug.cgi?id=340
Comment 7 Myriam Schweingruber 2010-05-03 09:39:15 UTC
Thank you for your feedback. Since this is an upstream xine bug, there is not much we can do about.
Comment 8 Myriam Schweingruber 2010-08-14 12:21:30 UTC
Setting status correctly.
Comment 9 Dario Andres 2010-11-17 23:43:30 UTC
*** Bug 257142 has been marked as a duplicate of this bug. ***
Comment 10 Christophe Marin 2010-11-26 14:20:37 UTC
*** Bug 256617 has been marked as a duplicate of this bug. ***
Comment 11 Pino Toscano 2011-01-10 18:20:24 UTC
*** Bug 262773 has been marked as a duplicate of this bug. ***
Comment 12 Pino Toscano 2011-01-14 15:35:33 UTC
*** Bug 263138 has been marked as a duplicate of this bug. ***
Comment 13 Myriam Schweingruber 2011-02-16 12:22:22 UTC
*** Bug 266174 has been marked as a duplicate of this bug. ***
Comment 14 Myriam Schweingruber 2011-06-05 22:09:51 UTC
*** Bug 274893 has been marked as a duplicate of this bug. ***