Strange crashes after ContextObserver dtor

Alex Merry kde at randomguy3.me.uk
Thu Dec 10 10:44:26 CET 2009


Well, the crash appears to be happening in Xine.  My guess is that the 
ContextObserver thing is a red herring: the Xine crash probably happens when 
it starts trying to play a track, and (for whatever reason - I don't know the 
Context code well enough to say) a bunch of ContextObservers go away at the 
track change boundary, hence the debug output.

Alex



On Thursday 10 December 2009 09:00:05 Mark Kretschmann wrote:
> Hey all,
> 
> lately I've seen several crashes that I can't really make sense of.
> Maybe one of you has an idea, so I'm giving it a shot here. What
> happens is this:
> 
> At random points Amarok will destroy ContextObserver, which detaches
> all of its subjects, and after that something goes wrong. Here's a
> debug log of it happening:
> 
> 
> amarok: BEGIN: virtual ContextObserver::~ContextObserver()
> amarok: BEGIN: void ContextSubject::detach(ContextObserver*)
> amarok: END__: void ContextSubject::detach(ContextObserver*) - Took
>  2.5e-05s amarok: END__: virtual ContextObserver::~ContextObserver() - Took
>  6.9e-05s amarok: BEGIN: virtual VideoclipEngine::~VideoclipEngine()
> amarok: END__: virtual VideoclipEngine::~VideoclipEngine() - Took 3.7e-05s
> amarok: BEGIN: virtual ContextObserver::~ContextObserver()
> amarok: BEGIN: void ContextSubject::detach(ContextObserver*)
> amarok: END__: void ContextSubject::detach(ContextObserver*) - Took
>  2.4e-05s amarok: END__: virtual ContextObserver::~ContextObserver() - Took
>  6.8e-05s KCrash: Application 'amarok' crashing...
> 
> 
> Luckily I found a way to reproduce this problem. It's obscure, but
> here's how you can do it:
> 
> 1) Load an album in the current playlist.
> 2) From outside of Amarok, delete one of the files of this album.
> 3) Try to play the track before the bad one, skip to near the end, let
> Amarok progress to the non-existing track.
> 4) Amarok will skip a few tracks, then stop playing.
> 5) Start with 3) once more. Watch Amarok crash.
> 
> 
> Bug report about the thing:
> 
> https://bugs.kde.org/show_bug.cgi?id=192114
> 
> 
> Here's the backtrace you get out of it:
> 
> 
> Application: Amarok (amarok), signal: Segmentation fault
> pthread_cond_wait@@GLIBC_2.3.2 ()
>     at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
> 	in ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
> The current source language is "auto; currently asm".
> [Current thread is 1 (Thread 0x7fe9986ef7a0 (LWP 4636))]
> 
> Thread 18 (Thread 0x7fe980db2910 (LWP 4637)):
> #0  pthread_cond_timedwait@@GLIBC_2.3.2 () at
> ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:220
> #1  0x00007fe986a67c91 in ?? () from /usr/lib/libxine.so.1
> #2  0x00007fe98fda8a04 in start_thread (arg=<value optimized out>) at
> pthread_create.c:300
> #3  0x00007fe994e6e7bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #4  0x0000000000000000 in ?? ()
> 
> Thread 17 (Thread 0x7fe97f869910 (LWP 4638)):
> #0  0x00007fe98fdac6dd in __pthread_mutex_unlock_usercnt
> (mutex=0x1d08258) at pthread_mutex_unlock.c:52
> #1  __pthread_mutex_unlock (mutex=0x1d08258) at pthread_mutex_unlock.c:289
> #2  0x00007fe98dfa935f in ?? () from /lib/libglib-2.0.so.0
> #3  0x00007fe98dfa96b0 in g_main_context_iteration () from
>  /lib/libglib-2.0.so.0 #4  0x00007fe995a161fe in
>  QEventDispatcherGlib::processEvents
> (this=0x1d6d140, flags=<value optimized out>) at
> kernel/qeventdispatcher_glib.cpp:329
> #5  0x00007fe9959ec532 in QEventLoop::processEvents (this=<value
> optimized out>, flags=) at kernel/qeventloop.cpp:149
> #6  0x00007fe9959ec904 in QEventLoop::exec (this=0x7fe97f868fb0,
> flags=) at kernel/qeventloop.cpp:201
> #7  0x00007fe9959046cb in QThread::exec (this=<value optimized out>)
> at thread/qthread.cpp:487
> #8  0x00007fe986cc256e in ?? () from
> /usr/lib/qt4/plugins/phonon_backend/phonon_xine.so
> #9  0x00007fe995907445 in QThreadPrivate::start (arg=0x1d6d100) at
> thread/qthread_unix.cpp:188
> #10 0x00007fe98fda8a04 in start_thread (arg=<value optimized out>) at
> pthread_create.c:300
> #11 0x00007fe994e6e7bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #12 0x0000000000000000 in ?? ()
> 
> Thread 16 (Thread 0x7fe97ac56910 (LWP 4644)):
> #0  0x00007fe994e62373 in *__GI___poll (fds=<value optimized out>,
> nfds=<value optimized out>, timeout=333) at
> ../sysdeps/unix/sysv/linux/poll.c:87
> #1  0x00007fe97ee64cbe in ?? () from
> /usr/lib/xine/plugins/1.26/xineplug_ao_out_alsa.so
> #2  0x00007fe98fda8a04 in start_thread (arg=<value optimized out>) at
> pthread_create.c:300
> #3  0x00007fe994e6e7bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #4  0x0000000000000000 in ?? ()
> The current source language is "auto; currently c".
> 
> Thread 15 (Thread 0x7fe97ea51910 (LWP 4645)):
> #0  pthread_cond_wait@@GLIBC_2.3.2 () at
> ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
> #1  0x00007fe986a78983 in ?? () from /usr/lib/libxine.so.1
> #2  0x00007fe98fda8a04 in start_thread (arg=<value optimized out>) at
> pthread_create.c:300
> #3  0x00007fe994e6e7bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #4  0x0000000000000000 in ?? ()
> 
> Thread 14 (Thread 0x7fe976454910 (LWP 4646)):
> #0  pthread_cond_wait@@GLIBC_2.3.2 () at
> ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
> #1  0x00007fe986a78983 in ?? () from /usr/lib/libxine.so.1
> #2  0x00007fe98fda8a04 in start_thread (arg=<value optimized out>) at
> pthread_create.c:300
> #3  0x00007fe994e6e7bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #4  0x0000000000000000 in ?? ()
> The current source language is "auto; currently asm".
> 
> Thread 13 (Thread 0x7fe978ffd910 (LWP 4648)):
> #0  0x00007fe994e673c2 in select () from /lib/libc.so.6
> #1  0x00007fe986a90725 in xine_usec_sleep () from /usr/lib/libxine.so.1
> #2  0x00007fe986a757e9 in ?? () from /usr/lib/libxine.so.1
> #3  0x00007fe98fda8a04 in start_thread (arg=<value optimized out>) at
> pthread_create.c:300
> #4  0x00007fe994e6e7bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #5  0x0000000000000000 in ?? ()
> 
> Thread 12 (Thread 0x7fe96f3c3910 (LWP 4649)):
> #0  pthread_cond_wait@@GLIBC_2.3.2 () at
> ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
> #1  0x00007fe9959084fb in QWaitConditionPrivate::wait (this=<value
> optimized out>, mutex=0x33f23c0, time=18446744073709551615) at
> thread/qwaitcondition_unix.cpp:87
> #2  QWaitCondition::wait (this=<value optimized out>, mutex=0x33f23c0,
> time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
> #3  0x00007fe99286d326 in
> ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned
> (this=0x32d7020, th=0x36f9de0) at
> ../../../threadweaver/Weaver/WeaverImpl.cpp:365
> #4  0x00007fe99286f45b in ThreadWeaver::WorkingHardState::applyForWork
> (this=0x32ea220, th=0x36f9de0) at
> ../../../threadweaver/Weaver/WorkingHardState.cpp:71
> #5  0x00007fe99286f474 in ThreadWeaver::WorkingHardState::applyForWork
> (this=0x32ea220, th=0x36f9de0) at
> ../../../threadweaver/Weaver/WorkingHardState.cpp:74
> #6  0x00007fe99286f474 in ThreadWeaver::WorkingHardState::applyForWork
> (this=0x32ea220, th=0x36f9de0) at
> ../../../threadweaver/Weaver/WorkingHardState.cpp:74
> #7  0x00007fe99286f474 in ThreadWeaver::WorkingHardState::applyForWork
> (this=0x32ea220, th=0x36f9de0) at
> ../../../threadweaver/Weaver/WorkingHardState.cpp:74
> #8  0x00007fe99286f474 in ThreadWeaver::WorkingHardState::applyForWork
> (this=0x32ea220, th=0x36f9de0) at
> ../../../threadweaver/Weaver/WorkingHardState.cpp:74
> #9  0x00007fe99286da5f in ThreadWeaver::ThreadRunHelper::run
> (this=0x7fe96f3c3000, parent=0x32d7020, th=0x36f9de0) at
> ../../../threadweaver/Weaver/Thread.cpp:87
> #10 0x00007fe99286deb8 in ThreadWeaver::Thread::run (this=0x36f9de0)
> at ../../../threadweaver/Weaver/Thread.cpp:142
> #11 0x00007fe995907445 in QThreadPrivate::start (arg=0x36f9de0) at
> thread/qthread_unix.cpp:188
> #12 0x00007fe98fda8a04 in start_thread (arg=<value optimized out>) at
> pthread_create.c:300
> #13 0x00007fe994e6e7bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #14 0x0000000000000000 in ?? ()
> The current source language is "auto; currently c".
> 
> Thread 11 (Thread 0x7fe96ebc2910 (LWP 4650)):
> #0  pthread_cond_wait@@GLIBC_2.3.2 () at
> ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
> #1  0x00007fe9959084fb in QWaitConditionPrivate::wait (this=<value
> optimized out>, mutex=0x33f23c0, time=18446744073709551615) at
> thread/qwaitcondition_unix.cpp:87
> #2  QWaitCondition::wait (this=<value optimized out>, mutex=0x33f23c0,
> time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
> #3  0x00007fe99286d326 in
> ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned
> (this=0x32d7020, th=0x7fe97018a490) at
> ../../../threadweaver/Weaver/WeaverImpl.cpp:365
> #4  0x00007fe99286f45b in ThreadWeaver::WorkingHardState::applyForWork
> (this=0x32ea220, th=0x7fe97018a490) at
> ../../../threadweaver/Weaver/WorkingHardState.cpp:71
> #5  0x00007fe99286da5f in ThreadWeaver::ThreadRunHelper::run
> (this=0x7fe96ebc2000, parent=0x32d7020, th=0x7fe97018a490) at
> ../../../threadweaver/Weaver/Thread.cpp:87
> #6  0x00007fe99286deb8 in ThreadWeaver::Thread::run
> (this=0x7fe97018a490) at ../../../threadweaver/Weaver/Thread.cpp:142
> #7  0x00007fe995907445 in QThreadPrivate::start (arg=0x7fe97018a490)
> at thread/qthread_unix.cpp:188
> #8  0x00007fe98fda8a04 in start_thread (arg=<value optimized out>) at
> pthread_create.c:300
> #9  0x00007fe994e6e7bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #10 0x0000000000000000 in ?? ()
> The current source language is "auto; currently asm".
> 
> Thread 10 (Thread 0x7fe96e3c1910 (LWP 4653)):
> #0  pthread_cond_wait@@GLIBC_2.3.2 () at
> ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
> #1  0x00007fe9959084fb in QWaitConditionPrivate::wait (this=<value
> optimized out>, mutex=0x33f23c0, time=18446744073709551615) at
> thread/qwaitcondition_unix.cpp:87
> #2  QWaitCondition::wait (this=<value optimized out>, mutex=0x33f23c0,
> time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
> #3  0x00007fe99286d326 in
> ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned
> (this=0x32d7020, th=0x3a53490) at
> ../../../threadweaver/Weaver/WeaverImpl.cpp:365
> #4  0x00007fe99286f45b in ThreadWeaver::WorkingHardState::applyForWork
> (this=0x32ea220, th=0x3a53490) at
> ../../../threadweaver/Weaver/WorkingHardState.cpp:71
> #5  0x00007fe99286f474 in ThreadWeaver::WorkingHardState::applyForWork
> (this=0x32ea220, th=0x3a53490) at
> ../../../threadweaver/Weaver/WorkingHardState.cpp:74
> #6  0x00007fe99286da5f in ThreadWeaver::ThreadRunHelper::run
> (this=0x7fe96e3c1000, parent=0x32d7020, th=0x3a53490) at
> ../../../threadweaver/Weaver/Thread.cpp:87
> #7  0x00007fe99286deb8 in ThreadWeaver::Thread::run (this=0x3a53490)
> at ../../../threadweaver/Weaver/Thread.cpp:142
> #8  0x00007fe995907445 in QThreadPrivate::start (arg=0x3a53490) at
> thread/qthread_unix.cpp:188
> #9  0x00007fe98fda8a04 in start_thread (arg=<value optimized out>) at
> pthread_create.c:300
> #10 0x00007fe994e6e7bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #11 0x0000000000000000 in ?? ()
> 
> Thread 9 (Thread 0x7fe95f7b8910 (LWP 4674)):
> #0  pthread_cond_timedwait@@GLIBC_2.3.2 () at
> ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:220
> #1  0x00007fe986a71a93 in ?? () from /usr/lib/libxine.so.1
> #2  0x00007fe98fda8a04 in start_thread (arg=<value optimized out>) at
> pthread_create.c:300
> #3  0x00007fe994e6e7bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #4  0x0000000000000000 in ?? ()
> 
> Thread 8 (Thread 0x7fe95efb7910 (LWP 4675)):
> [KCrash Handler]
> #5  0x00007fe983cebb97 in ?? () from /usr/lib/libavcodec.so.52
> #6  0x00007fe983cebfa2 in ?? () from /usr/lib/libavcodec.so.52
> #7  0x00007fe983cecc05 in ?? () from /usr/lib/libavcodec.so.52
> #8  0x00007fe983b9f547 in avcodec_decode_audio2 () from
> /usr/lib/libavcodec.so.52
> #9  0x00007fe984514089 in ?? () from
> /usr/lib/xine/plugins/1.26/xineplug_decode_ff.so
> #10 0x00007fe986a72bf2 in ?? () from /usr/lib/libxine.so.1
> #11 0x00007fe98fda8a04 in start_thread (arg=<value optimized out>) at
> pthread_create.c:300
> #12 0x00007fe994e6e7bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #13 0x0000000000000000 in ?? ()
> 
> Thread 7 (Thread 0x7fe95e7b6910 (LWP 4676)):
> #0  pthread_cond_wait@@GLIBC_2.3.2 () at
> ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
> #1  0x00007fe986a7ba0b in xine_event_wait () from /usr/lib/libxine.so.1
> #2  0x00007fe986a7ba7e in ?? () from /usr/lib/libxine.so.1
> #3  0x00007fe98fda8a04 in start_thread (arg=<value optimized out>) at
> pthread_create.c:300
> #4  0x00007fe994e6e7bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #5  0x0000000000000000 in ?? ()
> The current source language is "auto; currently c".
> 
> Thread 6 (Thread 0x7fe962dd5910 (LWP 5221)):
> #0  pthread_cond_wait@@GLIBC_2.3.2 () at
> ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
> #1  0x00007fe9959084fb in QWaitConditionPrivate::wait (this=<value
> optimized out>, mutex=0x8589030, time=18446744073709551615) at
> thread/qwaitcondition_unix.cpp:87
> #2  QWaitCondition::wait (this=<value optimized out>, mutex=0x8589030,
> time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
> #3  0x00007fe996a3943e in QFileInfoGatherer::run (this=<value
> optimized out>) at dialogs/qfileinfogatherer.cpp:207
> #4  0x00007fe995907445 in QThreadPrivate::start (arg=0x8589020) at
> thread/qthread_unix.cpp:188
> #5  0x00007fe98fda8a04 in start_thread (arg=<value optimized out>) at
> pthread_create.c:300
> #6  0x00007fe994e6e7bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #7  0x0000000000000000 in ?? ()
> The current source language is "auto; currently asm".
> 
> Thread 5 (Thread 0x7fe9635d6910 (LWP 5222)):
> #0  0xffffffffff60017b in ?? ()
> #1  0x00007fe9635d5cf0 in ?? ()
> #2  0x00007fff7e36c782 in ?? ()
> Backtrace stopped: previous frame identical to this frame (corrupt stack?)
> 
> Thread 4 (Thread 0x7fe9553e3910 (LWP 5223)):
> #0  pthread_cond_wait@@GLIBC_2.3.2 () at
> ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
> #1  0x00007fe9959084fb in QWaitConditionPrivate::wait (this=<value
> optimized out>, mutex=0x8492df0, time=18446744073709551615) at
> thread/qwaitcondition_unix.cpp:87
> #2  QWaitCondition::wait (this=<value optimized out>, mutex=0x8492df0,
> time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
> #3  0x00007fe996a3943e in QFileInfoGatherer::run (this=<value
> optimized out>) at dialogs/qfileinfogatherer.cpp:207
> #4  0x00007fe995907445 in QThreadPrivate::start (arg=0x8492de0) at
> thread/qthread_unix.cpp:188
> #5  0x00007fe98fda8a04 in start_thread (arg=<value optimized out>) at
> pthread_create.c:300
> #6  0x00007fe994e6e7bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #7  0x0000000000000000 in ?? ()
> 
> Thread 3 (Thread 0x7fe954be2910 (LWP 5224)):
> #0  0x00007fe994e62373 in *__GI___poll (fds=<value optimized out>,
> nfds=<value optimized out>, timeout=-1) at
> ../sysdeps/unix/sysv/linux/poll.c:87
> #1  0x00007fe98dfa936c in ?? () from /lib/libglib-2.0.so.0
> #2  0x00007fe98dfa96b0 in g_main_context_iteration () from
>  /lib/libglib-2.0.so.0 #3  0x00007fe995a161fe in
>  QEventDispatcherGlib::processEvents
> (this=0x230c8e0, flags=<value optimized out>) at
> kernel/qeventdispatcher_glib.cpp:329
> #4  0x00007fe9959ec532 in QEventLoop::processEvents (this=<value
> optimized out>, flags=) at kernel/qeventloop.cpp:149
> #5  0x00007fe9959ec904 in QEventLoop::exec (this=0x7fe954be1fc0,
> flags=) at kernel/qeventloop.cpp:201
> #6  0x00007fe9959046cb in QThread::exec (this=<value optimized out>)
> at thread/qthread.cpp:487
> #7  0x00007fe9959cfb78 in QInotifyFileSystemWatcherEngine::run
> (this=0x840ef90) at io/qfilesystemwatcher_inotify.cpp:214
> #8  0x00007fe995907445 in QThreadPrivate::start (arg=0x840ef90) at
> thread/qthread_unix.cpp:188
> #9  0x00007fe98fda8a04 in start_thread (arg=<value optimized out>) at
> pthread_create.c:300
> #10 0x00007fe994e6e7bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #11 0x0000000000000000 in ?? ()
> 
> Thread 2 (Thread 0x7fe94ffff910 (LWP 6229)):
> #0  pthread_cond_wait@@GLIBC_2.3.2 () at
> ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
> #1  0x00007fe9959084fb in QWaitConditionPrivate::wait (this=<value
> optimized out>, mutex=0x33f23c0, time=18446744073709551615) at
> thread/qwaitcondition_unix.cpp:87
> #2  QWaitCondition::wait (this=<value optimized out>, mutex=0x33f23c0,
> time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
> #3  0x00007fe99286d326 in
> ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned
> (this=0x32d7020, th=0x84960b0) at
> ../../../threadweaver/Weaver/WeaverImpl.cpp:365
> #4  0x00007fe99286f45b in ThreadWeaver::WorkingHardState::applyForWork
> (this=0x32ea220, th=0x84960b0) at
> ../../../threadweaver/Weaver/WorkingHardState.cpp:71
> #5  0x00007fe99286f474 in ThreadWeaver::WorkingHardState::applyForWork
> (this=0x32ea220, th=0x84960b0) at
> ../../../threadweaver/Weaver/WorkingHardState.cpp:74
> #6  0x00007fe99286f474 in ThreadWeaver::WorkingHardState::applyForWork
> (this=0x32ea220, th=0x84960b0) at
> ../../../threadweaver/Weaver/WorkingHardState.cpp:74
> #7  0x00007fe99286da5f in ThreadWeaver::ThreadRunHelper::run
> (this=0x7fe94ffff000, parent=0x32d7020, th=0x84960b0) at
> ../../../threadweaver/Weaver/Thread.cpp:87
> #8  0x00007fe99286deb8 in ThreadWeaver::Thread::run (this=0x84960b0)
> at ../../../threadweaver/Weaver/Thread.cpp:142
> #9  0x00007fe995907445 in QThreadPrivate::start (arg=0x84960b0) at
> thread/qthread_unix.cpp:188
> #10 0x00007fe98fda8a04 in start_thread (arg=<value optimized out>) at
> pthread_create.c:300
> #11 0x00007fe994e6e7bd in clone () at
> ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
> #12 0x0000000000000000 in ?? ()
> The current source language is "auto; currently c".
> 
> Thread 1 (Thread 0x7fe9986ef7a0 (LWP 4636)):
> #0  pthread_cond_wait@@GLIBC_2.3.2 () at
> ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
> #1  0x00007fe9959084fb in QWaitConditionPrivate::wait (this=<value
> optimized out>, mutex=0x1d4d478, time=18446744073709551615) at
> thread/qwaitcondition_unix.cpp:87
> #2  QWaitCondition::wait (this=<value optimized out>, mutex=0x1d4d478,
> time=18446744073709551615) at thread/qwaitcondition_unix.cpp:159
> #3  0x00007fe986cc71dd in ?? () from
> /usr/lib/qt4/plugins/phonon_backend/phonon_xine.so
> #4  0x00007fe986cdaed6 in ?? () from
> /usr/lib/qt4/plugins/phonon_backend/phonon_xine.so
> #5  0x00007fe9921b50b4 in
> Phonon::MediaNodePrivate::deleteBackendObject (this=0x1c5bb30) at
> ../3rdparty/phonon/phonon/medianode.cpp:81
> #6  0x00007fe9921c3cc5 in ~FactoryPrivate (this=0x1c5b850,
> __in_chrg=<value optimized out>) at
> ../3rdparty/phonon/phonon/factory.cpp:193
> #7  0x00007fe994dc7c12 in __run_exit_handlers (status=1) at exit.c:78
> #8  *__GI_exit (status=1) at exit.c:100
> #9  0x00007fe9965de328 in qt_xio_errhandler () at
> kernel/qapplication_x11.cpp:707
> #10 0x00007fe998271838 in KApplication::xioErrhandler
> (this=0x7fff7e25aa90, dpy=0x1c7ad10) at
> ../../kdeui/kernel/kapplication.cpp:408
> #11 0x00007fe994676fae in _XIOError () from /usr/lib/libX11.so.6
> #12 0x00007fe99467e9a5 in ?? () from /usr/lib/libX11.so.6
> #13 0x00007fe99467f257 in _XEventsQueued () from /usr/lib/libX11.so.6
> #14 0x00007fe99466801b in XEventsQueued () from /usr/lib/libX11.so.6
> #15 0x00007fe99661767c in x11EventSourceCheck (s=0x1c55cd0) at
> kernel/qguieventdispatcher_glib.cpp:87
> #16 0x00007fe98dfa8a9a in g_main_context_check () from
>  /lib/libglib-2.0.so.0 #17 0x00007fe98dfa9280 in ?? () from
>  /lib/libglib-2.0.so.0
> #18 0x00007fe98dfa96b0 in g_main_context_iteration () from
>  /lib/libglib-2.0.so.0 #19 0x00007fe995a161a6 in
>  QEventDispatcherGlib::processEvents
> (this=0x1b10770, flags=<value optimized out>) at
> kernel/qeventdispatcher_glib.cpp:327
> #20 0x00007fe9966174be in QGuiEventDispatcherGlib::processEvents
> (this=0x1db2dbc, flags=<value optimized out>) at
> kernel/qguieventdispatcher_glib.cpp:202
> #21 0x00007fe9959ec532 in QEventLoop::processEvents (this=<value
> optimized out>, flags=) at kernel/qeventloop.cpp:149
> #22 0x00007fe9959ec904 in QEventLoop::exec (this=0x7fff7e25aa30,
> flags=) at kernel/qeventloop.cpp:201
> #23 0x00007fe9959eeab9 in QCoreApplication::exec () at
> kernel/qcoreapplication.cpp:888
> #24 0x00000000004098aa in main (argc=4, argv=0x7fff7e25c998) at
> /home/mark/kde/src/amarok/src/main.cpp:235
> The current source language is "auto; currently asm".
> 

-- 
Why have I got six monitors?  Because I haven't got room for eight.
  -- Terry Pratchett
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
Url : http://mail.kde.org/pipermail/amarok-devel/attachments/20091210/91f993fb/attachment.sig 


More information about the Amarok-devel mailing list