Bug 238499 - Crash of Amarok with the AutomatedPlaylistGenerator [@ Collections::MemoryQueryMakerInternal::emitProperResult]
Summary: Crash of Amarok with the AutomatedPlaylistGenerator [@ Collections::MemoryQue...
Status: RESOLVED DUPLICATE of bug 238503
Alias: None
Product: amarok
Classification: Applications
Component: Collections/Local (show other bugs)
Version: unspecified
Platform: Unlisted Binaries Linux
: NOR crash
Target Milestone: ---
Assignee: Amarok Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-05-22 15:22 UTC by Mickaël
Modified: 2010-05-29 17:51 UTC (History)
1 user (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 Mickaël 2010-05-22 15:22:39 UTC
Application that crashed: amarok
Version of the application: 2.3-GIT
KDE Version: 4.3.5 (KDE 4.3.5)
Qt Version: 4.5.3
Operating System: Linux 2.6.31.13-desktop586-1mnb i686
Distribution: "Mandriva Linux 2010.0"

What I was doing when the application crashed:
I had the Dynamic playlist mode enabled, then I clicked on "Generate a new Playlist" with the Automated Playlist Generator (sample playlist "like my favorite radio station")... then Amarok crashed.

 -- Backtrace:
Application: Amarok (amarok), signal: Aborted
[Current thread is 1 (Thread 0xb31316e0 (LWP 31639))]

Thread 5 (Thread 0xac894b70 (LWP 31650)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb58d89e5 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/libpthread.so.0
#2  0xb5a216ed in __pthread_cond_wait (cond=0xa639748, mutex=0xa639730) at forward.c:139
#3  0xb65d1fb0 in QWaitCondition::wait (this=0xa639680, mutex=0xa624550, time=4294967295) at thread/qwaitcondition_unix.cpp:87
#4  0xb51063c9 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0xa639668, th=0xa639ba0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:365
#5  0xb5108abb in ThreadWeaver::WorkingHardState::waitForAvailableJob (this=0xa4d9bc8, th=0xa639ba0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WorkingHardState.cpp:80
#6  0xb5104a1a in ThreadWeaver::WeaverImpl::waitForAvailableJob (this=0xa639668, th=0xa639ba0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:356
#7  0xb5108bbc in ThreadWeaver::WorkingHardState::applyForWork (this=0xa4d9bc8, th=0xa639ba0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WorkingHardState.cpp:71
#8  0xb5106653 in ThreadWeaver::WeaverImpl::applyForWork (this=0xa639668, th=0xa639ba0, previous=0x0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:351
#9  0xb5108bd8 in ThreadWeaver::WorkingHardState::applyForWork (this=0xa4d9bc8, th=0xa639ba0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WorkingHardState.cpp:74
#10 0xb5106653 in ThreadWeaver::WeaverImpl::applyForWork (this=0xa639668, th=0xa639ba0, previous=0xf22bbf8) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:351
#11 0xb5106c34 in ThreadWeaver::ThreadRunHelper::run (this=0xac894344, parent=0xa639668, th=0xa639ba0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/Thread.cpp:87
#12 0xb51072aa in ThreadWeaver::Thread::run (this=0xa639ba0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/Thread.cpp:142
#13 0xb65d0e83 in QThreadPrivate::start (arg=0xa639ba0) at thread/qthread_unix.cpp:188
#14 0xb58d4885 in start_thread () from /lib/i686/libpthread.so.0
#15 0xb5a1357e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 4 (Thread 0xaa109b70 (LWP 31651)):
[KCrash Handler]
#6  0xffffe430 in __kernel_vsyscall ()
#7  0xb5966611 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#8  0xb5967f62 in abort () at abort.c:88
#9  0xb65c8a04 in qt_message_output (msgType=QtFatalMsg, buf=0x6 <Address 0x6 out of bounds>) at global/qglobal.cpp:2042
#10 0xb65c8b08 in qFatal (msg=0x6 <Address 0x6 out of bounds>) at global/qglobal.cpp:2241
#11 0xb65c8c05 in qt_assert (assertion=0xb70dd2cc "!isEmpty()", file=0xb70dd2a8 "/usr/lib/qt4/include/QtCore/qlist.h", line=252) at global/qglobal.cpp:1811
#12 0xb6cc7a7f in QList<KSharedPtr<Meta::Track> >::first (this=0xaa108f40) at /usr/lib/qt4/include/QtCore/qlist.h:252
#13 0xb6cc5c40 in QList<KSharedPtr<Meta::Track> >::takeFirst (this=0xaa108f40) at /usr/lib/qt4/include/QtCore/qlist.h:416
#14 0xb6cc29db in KRandomSequence::randomize<KSharedPtr<Meta::Track> > (this=0xaa108f38, list=@0xaa108f40) at /usr/include/KDE/../krandomsequence.h:112
#15 0xb6e14a9a in Collections::MemoryQueryMakerInternal::emitProperResult<KSharedPtr<Meta::Track> > (this=0xafcd900, list=@0xaa109064)
    at /home/mickael/kdesvn/amarok/src/core-impl/collections/support/MemoryQueryMakerInternal.cpp:106
#16 0xb6e129b4 in Collections::MemoryQueryMakerInternal::handleResult (this=0xafcd900, tmpTracks=@0xaa1091b4)
    at /home/mickael/kdesvn/amarok/src/core-impl/collections/support/MemoryQueryMakerInternal.cpp:472
#17 0xb6e0e0a3 in Collections::MemoryQueryMakerInternal::runQuery (this=0xafcd900) at /home/mickael/kdesvn/amarok/src/core-impl/collections/support/MemoryQueryMakerInternal.cpp:91
#18 0xb6e0ccde in QueryJob::run (this=0xafcc220) at /home/mickael/kdesvn/amarok/src/core-impl/collections/support/MemoryQueryMaker.cpp:59
#19 0xb5107ce8 in ThreadWeaver::JobRunHelper::runTheJob (this=0xaa1092bc, th=0xa63bd18, job=0xafcc220) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/Job.cpp:106
#20 0xb5108043 in ThreadWeaver::Job::execute (this=0xafcc220, th=0xa63bd18) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/Job.cpp:135
#21 0xb5106c02 in ThreadWeaver::ThreadRunHelper::run (this=0xaa109344, parent=0xa639668, th=0xa63bd18) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/Thread.cpp:95
#22 0xb51072aa in ThreadWeaver::Thread::run (this=0xa63bd18) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/Thread.cpp:142
#23 0xb65d0e83 in QThreadPrivate::start (arg=0xa63bd18) at thread/qthread_unix.cpp:188
#24 0xb58d4885 in start_thread () from /lib/i686/libpthread.so.0
#25 0xb5a1357e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 3 (Thread 0xa9908b70 (LWP 31653)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb58d89e5 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/libpthread.so.0
#2  0xb5a216ed in __pthread_cond_wait (cond=0xa639748, mutex=0xa639730) at forward.c:139
#3  0xb65d1fb0 in QWaitCondition::wait (this=0xa639680, mutex=0xa624550, time=4294967295) at thread/qwaitcondition_unix.cpp:87
#4  0xb51063c9 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0xa639668, th=0x9f489d0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:365
#5  0xb5108abb in ThreadWeaver::WorkingHardState::waitForAvailableJob (this=0xa4d9bc8, th=0x9f489d0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WorkingHardState.cpp:80
#6  0xb5104a1a in ThreadWeaver::WeaverImpl::waitForAvailableJob (this=0xa639668, th=0x9f489d0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:356
#7  0xb5108bbc in ThreadWeaver::WorkingHardState::applyForWork (this=0xa4d9bc8, th=0x9f489d0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WorkingHardState.cpp:71
#8  0xb5106653 in ThreadWeaver::WeaverImpl::applyForWork (this=0xa639668, th=0x9f489d0, previous=0x0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:351
#9  0xb5108bd8 in ThreadWeaver::WorkingHardState::applyForWork (this=0xa4d9bc8, th=0x9f489d0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WorkingHardState.cpp:74
#10 0xb5106653 in ThreadWeaver::WeaverImpl::applyForWork (this=0xa639668, th=0x9f489d0, previous=0x0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:351
#11 0xb5108bd8 in ThreadWeaver::WorkingHardState::applyForWork (this=0xa4d9bc8, th=0x9f489d0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WorkingHardState.cpp:74
#12 0xb5106653 in ThreadWeaver::WeaverImpl::applyForWork (this=0xa639668, th=0x9f489d0, previous=0x0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:351
#13 0xb5108bd8 in ThreadWeaver::WorkingHardState::applyForWork (this=0xa4d9bc8, th=0x9f489d0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WorkingHardState.cpp:74
#14 0xb5106653 in ThreadWeaver::WeaverImpl::applyForWork (this=0xa639668, th=0x9f489d0, previous=0x0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:351
#15 0xb5108bd8 in ThreadWeaver::WorkingHardState::applyForWork (this=0xa4d9bc8, th=0x9f489d0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WorkingHardState.cpp:74
#16 0xb5106653 in ThreadWeaver::WeaverImpl::applyForWork (this=0xa639668, th=0x9f489d0, previous=0x0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:351
#17 0xb5108bd8 in ThreadWeaver::WorkingHardState::applyForWork (this=0xa4d9bc8, th=0x9f489d0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WorkingHardState.cpp:74
#18 0xb5106653 in ThreadWeaver::WeaverImpl::applyForWork (this=0xa639668, th=0x9f489d0, previous=0x0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:351
#19 0xb5108bd8 in ThreadWeaver::WorkingHardState::applyForWork (this=0xa4d9bc8, th=0x9f489d0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WorkingHardState.cpp:74
#20 0xb5106653 in ThreadWeaver::WeaverImpl::applyForWork (this=0xa639668, th=0x9f489d0, previous=0x0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:351
#21 0xb5108bd8 in ThreadWeaver::WorkingHardState::applyForWork (this=0xa4d9bc8, th=0x9f489d0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WorkingHardState.cpp:74
#22 0xb5106653 in ThreadWeaver::WeaverImpl::applyForWork (this=0xa639668, th=0x9f489d0, previous=0x0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:351
#23 0xb5106c34 in ThreadWeaver::ThreadRunHelper::run (this=0xa9908344, parent=0xa639668, th=0x9f489d0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/Thread.cpp:87
#24 0xb51072aa in ThreadWeaver::Thread::run (this=0x9f489d0) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/Thread.cpp:142
#25 0xb65d0e83 in QThreadPrivate::start (arg=0x9f489d0) at thread/qthread_unix.cpp:188
#26 0xb58d4885 in start_thread () from /lib/i686/libpthread.so.0
#27 0xb5a1357e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 2 (Thread 0xa9107b70 (LWP 31654)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb58d89e5 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/libpthread.so.0
#2  0xb5a216ed in __pthread_cond_wait (cond=0xa639748, mutex=0xa639730) at forward.c:139
#3  0xb65d1fb0 in QWaitCondition::wait (this=0xa639680, mutex=0xa624550, time=4294967295) at thread/qwaitcondition_unix.cpp:87
#4  0xb51063c9 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0xa639668, th=0xa03e440) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:365
#5  0xb5108abb in ThreadWeaver::WorkingHardState::waitForAvailableJob (this=0xa4d9bc8, th=0xa03e440) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WorkingHardState.cpp:80
#6  0xb5104a1a in ThreadWeaver::WeaverImpl::waitForAvailableJob (this=0xa639668, th=0xa03e440) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:356
#7  0xb5108bbc in ThreadWeaver::WorkingHardState::applyForWork (this=0xa4d9bc8, th=0xa03e440) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WorkingHardState.cpp:71
#8  0xb5106653 in ThreadWeaver::WeaverImpl::applyForWork (this=0xa639668, th=0xa03e440, previous=0xb0cd168) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/WeaverImpl.cpp:351
#9  0xb5106c34 in ThreadWeaver::ThreadRunHelper::run (this=0xa9107344, parent=0xa639668, th=0xa03e440) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/Thread.cpp:87
#10 0xb51072aa in ThreadWeaver::Thread::run (this=0xa03e440) at /usr/src/debug/kdelibs-4.3.5/threadweaver/Weaver/Thread.cpp:142
#11 0xb65d0e83 in QThreadPrivate::start (arg=0xa03e440) at thread/qthread_unix.cpp:188
#12 0xb58d4885 in start_thread () from /lib/i686/libpthread.so.0
#13 0xb5a1357e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 1 (Thread 0xb31316e0 (LWP 31639)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb5a0243b in write () from /lib/i686/libc.so.6
#2  0xb3a12206 in write_string (fd=2, 
    string=0x9fe7d70 "\n(<unknown>:31639): GStreamer-WARNING **: gstsystemclock: write control failed in wakeup_async, trying again : 9:Mauvais descripteur de fichier\n\n") at gmessages.c:132
#3  0xb3a12624 in IA__g_log_default_handler (log_domain=0xad6badb8 "GStreamer", log_level=<value optimized out>, 
    message=0xa03ed68 "gstsystemclock: write control failed in wakeup_async, trying again : 9:Mauvais descripteur de fichier\n", unused_data=0x0) at gmessages.c:1002
#4  0xb3a12a0b in IA__g_logv (log_domain=<value optimized out>, log_level=G_LOG_LEVEL_WARNING, format=0xad6cb6cc "gstsystemclock: write control failed in wakeup_async, trying again : %d:%s\n", 
    args1=0xbfd1b41c "\t") at gmessages.c:519
#5  0xb3a12d87 in IA__g_log (log_domain=0xad6badb8 "GStreamer", log_level=G_LOG_LEVEL_WARNING, format=0xad6cb6cc "gstsystemclock: write control failed in wakeup_async, trying again : %d:%s\n")
    at gmessages.c:569
#6  0xad68f677 in ?? () from /usr/lib/libgstreamer-0.10.so.0
#7  0xad6912cb in ?? () from /usr/lib/libgstreamer-0.10.so.0
#8  0xb38eb7c8 in IA__g_object_unref (_object=0x9ed4478) at gobject.c:2441
#9  0xad637bed in gst_object_unref () from /usr/lib/libgstreamer-0.10.so.0
#10 0xad5c70a3 in ?? () from /usr/lib/libgstaudio-0.10.so.0
#11 0xb38eb7c8 in IA__g_object_unref (_object=0x9ed0170) at gobject.c:2441
#12 0xad637bed in gst_object_unref () from /usr/lib/libgstreamer-0.10.so.0
#13 0xad6409c7 in ?? () from /usr/lib/libgstreamer-0.10.so.0
#14 0xad63bed2 in gst_bin_remove () from /usr/lib/libgstreamer-0.10.so.0
#15 0xad642476 in ?? () from /usr/lib/libgstreamer-0.10.so.0
#16 0xb38eb7c8 in IA__g_object_unref (_object=0x9ed2328) at gobject.c:2441
#17 0xad637bed in gst_object_unref () from /usr/lib/libgstreamer-0.10.so.0
#18 0xad6409c7 in ?? () from /usr/lib/libgstreamer-0.10.so.0
#19 0xad63bed2 in gst_bin_remove () from /usr/lib/libgstreamer-0.10.so.0
#20 0xad642476 in ?? () from /usr/lib/libgstreamer-0.10.so.0
#21 0xb38eb7c8 in IA__g_object_unref (_object=0x9f114b8) at gobject.c:2441
#22 0xad637bed in gst_object_unref () from /usr/lib/libgstreamer-0.10.so.0
#23 0xad737d05 in ~MediaObject (this=0x9f1d638) at /usr/src/debug/phonon-4.3.50/gstreamer/mediaobject.cpp:116
#24 0xb53d85ba in Phonon::MediaNodePrivate::deleteBackendObject (this=0x9d59288) at /usr/src/debug/phonon-4.3.50/phonon/medianode.cpp:81
#25 0xb53e6f68 in ~FactoryPrivate (this=0x9d35dd0) at /usr/src/debug/phonon-4.3.50/phonon/factory.cpp:193
#26 0xb53e6662 in destroy () at /usr/src/debug/phonon-4.3.50/phonon/factory.cpp:84
#27 0xb53e2c79 in ~CleanUpGlobalStatic (this=0xb5412884) at /usr/src/debug/phonon-4.3.50/phonon/globalstatic_p.h:55
#28 0xb59696df in __run_exit_handlers (status=1, listp=0xb5a9a304, run_list_atexit=true) at exit.c:78
#29 0xb596974f in exit (status=1) at exit.c:100
#30 0xb5d529d8 in qt_xio_errhandler () at kernel/qapplication_x11.cpp:711
#31 0xb74dc419 in KApplication::xioErrhandler (this=0xbfd1bea8, dpy=0x9ce9330) at /usr/src/debug/kdelibs-4.3.5/kdeui/kernel/kapplication.cpp:408
#32 0xb74dc454 in kde_xio_errhandler (dpy=0x9ce9330) at /usr/src/debug/kdelibs-4.3.5/kdeui/kernel/kapplication.cpp:125
#33 0xb57b2754 in _XIOError (dpy=0x9ce9330) at XlibInt.c:2959
#34 0xb57ba340 in process_responses (dpy=0x9ce9330, wait_for_first_event=<value optimized out>, current_error=0x0, current_request=0) at xcb_io.c:240
#35 0xb57bacb7 in _XEventsQueued (dpy=0x9ce9330, mode=2) at xcb_io.c:256
#36 0xb57a37f4 in XEventsQueued (dpy=0x9ce9330, mode=2) at Pending.c:44
#37 0xb5d8f6a5 in x11EventSourceCheck (s=0x9cdf8f8) at kernel/qguieventdispatcher_glib.cpp:87
#38 0xb3a0ba62 in IA__g_main_context_check (context=0x9cde908, max_priority=2147483647, fds=0xb134580, n_fds=12) at gmain.c:2469
#39 0xb3a0c190 in g_main_context_iterate (context=0x9cde908, block=<value optimized out>, dispatch=1, self=0x9cda360) at gmain.c:2588
#40 0xb3a0c58e in IA__g_main_context_iteration (context=0x9cde908, may_block=1) at gmain.c:2654
#41 0xb66f38f1 in QEventDispatcherGlib::processEvents (this=0x9cd52e0, flags={i = 36}) at kernel/qeventdispatcher_glib.cpp:406
#42 0xb5d8f4ba in QGuiEventDispatcherGlib::processEvents (this=0x9cd52e0, flags={i = 36}) at kernel/qguieventdispatcher_glib.cpp:202
#43 0xb66c626d in QEventLoop::processEvents (this=0xbfd1be34, flags=) at kernel/qeventloop.cpp:149
#44 0xb66c66b9 in QEventLoop::exec (this=0xbfd1be34, flags={i = 0}) at kernel/qeventloop.cpp:201
#45 0xb66c8b50 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888
#46 0xb5ced504 in QApplication::exec () at kernel/qapplication.cpp:3525
#47 0x080525b7 in main (argc=1, argv=0xbfd1c734) at /home/mickael/kdesvn/amarok/src/main.cpp:237

Reported using DrKonqi
Comment 1 Soren Harward 2010-05-22 16:25:44 UTC
This is actually a bug in KDECore, not Amarok.  KRandomSequence::randomize() shouldn't crash when it's passed an empty list.  I'll report it upstream.
Comment 2 Soren Harward 2010-05-22 16:38:06 UTC
Reported upstream: https://bugs.kde.org/show_bug.cgi?id=238503
Comment 3 Myriam Schweingruber 2010-05-29 17:51:54 UTC
Not really "upstream", since it is in the KDE bugzilla.

*** This bug has been marked as a duplicate of bug 238503 ***