Summary: | crash when adding podcast to playlist | ||
---|---|---|---|
Product: | [Applications] amarok | Reporter: | simon |
Component: | Playlist | Assignee: | Amarok Developers <amarok-bugs-dist> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | bart.cerneels, moritz-kdebugs, myriam, nhn |
Priority: | NOR | ||
Version First Reported In: | 2.0-SVN | ||
Target Milestone: | --- | ||
Platform: | Debian unstable | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: | crash while adding stream |
Description
simon
2009-01-18 16:28:46 UTC
Could you please post the podcast url and the episode this happens with? *** Bug 181147 has been marked as a duplicate of this bug. *** This is probably caused by missing tags in the PodcastEpisode that the groupingproxy doesn't check for null. Created attachment 30812 [details]
crash while adding stream
Here comes another backtrace. Amarok crashed while adding a stream while another stream was playing. SVN build from 30 Jan 2009. The crash resulted in Amarok using 100% CPU (!) and I had to kill it manually. I also have a crash with amarok 2.0.1 on Debian AMD64 unstable+ experimental when adding a stream from a podcast to the playlist. However, I am not sure it is the same bug, the backtravce looks a little bit different (I think...). It is triggered, if I have one stream in the playlist and drag or load a second stream from the same podcast (http://podcast.wdr.de/radio/zeitzeichen.xml) Anwendung: Amarok (amarok), Signal SIGABRT 0x00007f3b7f99bff1 in nanosleep () from /lib/libc.so.6 [Current thread is 0 (LWP 31477)] Thread 14 (Thread 0x41e61950 (LWP 31479)): #0 0x00007f3b7dc9dfad in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #1 0x00007f3b71578cb1 in ?? () from /usr/lib/libxine.so.1 #2 0x00007f3b7dc99fc7 in start_thread () from /lib/libpthread.so.0 #3 0x00007f3b7f9cd5ad in clone () from /lib/libc.so.6 #4 0x0000000000000000 in ?? () Thread 13 (Thread 0x41013950 (LWP 31480)): #0 0x00007fff89ef76b7 in clock_gettime () #1 0x00007f3b7856caad in clock_gettime () from /lib/librt.so.1 #2 0x00007f3b7fdcf21d in ?? () from /usr/lib/libQtCore.so.4 #3 0x00007f3b7fdcf411 in ?? () from /usr/lib/libQtCore.so.4 #4 0x00007f3b7fdcd81c in ?? () from /usr/lib/libQtCore.so.4 #5 0x00007f3b7deeb4e2 in g_main_context_check () from /usr/lib/libglib-2.0.so.0 #6 0x00007f3b7deebe41 in ?? () from /usr/lib/libglib-2.0.so.0 #7 0x00007f3b7deec11b in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #8 0x00007f3b7fdcd73e in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4 #9 0x00007f3b7fda3cb2 in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4 #10 0x00007f3b7fda3e3d in QEventLoop::exec () from /usr/lib/libQtCore.so.4 #11 0x00007f3b7fcba218 in QThread::exec () from /usr/lib/libQtCore.so.4 #12 0x00007f3b717fc634 in ?? () from /usr/lib/kde4/plugins/phonon_backend/phonon_xine.so #13 0x00007f3b7fcbd162 in ?? () from /usr/lib/libQtCore.so.4 #14 0x00007f3b7dc99fc7 in start_thread () from /lib/libpthread.so.0 #15 0x00007f3b7f9cd5ad in clone () from /lib/libc.so.6 #16 0x0000000000000000 in ?? () Thread 12 (Thread 0x42662950 (LWP 31483)): #0 0x00007f3b7f9bf9ab in read () from /lib/libc.so.6 #1 0x00007f3b71cce845 in ?? () from /usr/lib/libasound.so.2 #2 0x00007f3b71cc9cd8 in snd_hctl_handle_events () from /usr/lib/libasound.so.2 #3 0x00007f3b71cd36c5 in snd_mixer_handle_events () from /usr/lib/libasound.so.2 #4 0x00007f3b6a70a838 in ?? () from /usr/lib/xine/plugins/1.25/xineplug_ao_out_alsa.so #5 0x00007f3b7dc99fc7 in start_thread () from /lib/libpthread.so.0 #6 0x00007f3b7f9cd5ad in clone () from /lib/libc.so.6 #7 0x0000000000000000 in ?? () Thread 11 (Thread 0x42e63950 (LWP 31484)): #0 0x00007f3b7dc9dd29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #1 0x00007f3b71589c13 in ?? () from /usr/lib/libxine.so.1 #2 0x00007f3b7dc99fc7 in start_thread () from /lib/libpthread.so.0 #3 0x00007f3b7f9cd5ad in clone () from /lib/libc.so.6 #4 0x0000000000000000 in ?? () Thread 10 (Thread 0x43664950 (LWP 31486)): #0 0x00007f3b7f9c6ce2 in select () from /lib/libc.so.6 #1 0x00007f3b7fd85756 in ?? () from /usr/lib/libQtCore.so.4 #2 0x00007f3b7fcbd162 in ?? () from /usr/lib/libQtCore.so.4 #3 0x00007f3b7dc99fc7 in start_thread () from /lib/libpthread.so.0 #4 0x00007f3b7f9cd5ad in clone () from /lib/libc.so.6 #5 0x0000000000000000 in ?? () Thread 9 (Thread 0x43e65950 (LWP 31488)): #0 0x00007f3b7dc9dd29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #1 0x00007f3b7fcbe159 in QWaitCondition::wait () from /usr/lib/libQtCore.so.4 #2 0x00007f3b7acf3e04 in ?? () from /usr/lib/libthreadweaver.so.4 #3 0x00007f3b7acf65b3 in ?? () from /usr/lib/libthreadweaver.so.4 #4 0x00007f3b7acf65cc in ?? () from /usr/lib/libthreadweaver.so.4 #5 0x00007f3b7acf65cc in ?? () from /usr/lib/libthreadweaver.so.4 #6 0x00007f3b7acf65cc in ?? () from /usr/lib/libthreadweaver.so.4 #7 0x00007f3b7acf65cc in ?? () from /usr/lib/libthreadweaver.so.4 #8 0x00007f3b7acf65cc in ?? () from /usr/lib/libthreadweaver.so.4 #9 0x00007f3b7acf65cc in ?? () from /usr/lib/libthreadweaver.so.4 #10 0x00007f3b7acf65cc in ?? () from /usr/lib/libthreadweaver.so.4 #11 0x00007f3b7acf4b2f in ?? () from /usr/lib/libthreadweaver.so.4 #12 0x00007f3b7acf4f89 in ThreadWeaver::Thread::run () from /usr/lib/libthreadweaver.so.4 #13 0x00007f3b7fcbd162 in ?? () from /usr/lib/libQtCore.so.4 #14 0x00007f3b7dc99fc7 in start_thread () from /lib/libpthread.so.0 #15 0x00007f3b7f9cd5ad in clone () from /lib/libc.so.6 #16 0x0000000000000000 in ?? () Thread 8 (Thread 0x44666950 (LWP 31489)): #0 0x00007f3b7dc9dd29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #1 0x00007f3b7fcbe159 in QWaitCondition::wait () from /usr/lib/libQtCore.so.4 #2 0x00007f3b7acf3e04 in ?? () from /usr/lib/libthreadweaver.so.4 #3 0x00007f3b7acf65b3 in ?? () from /usr/lib/libthreadweaver.so.4 #4 0x00007f3b7acf65cc in ?? () from /usr/lib/libthreadweaver.so.4 #5 0x00007f3b7acf65cc in ?? () from /usr/lib/libthreadweaver.so.4 #6 0x00007f3b7acf4b2f in ?? () from /usr/lib/libthreadweaver.so.4 #7 0x00007f3b7acf4f89 in ThreadWeaver::Thread::run () from /usr/lib/libthreadweaver.so.4 #8 0x00007f3b7fcbd162 in ?? () from /usr/lib/libQtCore.so.4 #9 0x00007f3b7dc99fc7 in start_thread () from /lib/libpthread.so.0 #10 0x00007f3b7f9cd5ad in clone () from /lib/libc.so.6 #11 0x0000000000000000 in ?? () Thread 7 (Thread 0x44e67950 (LWP 31490)): #0 0x00007f3b7dc9dd29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #1 0x00007f3b7fcbe159 in QWaitCondition::wait () from /usr/lib/libQtCore.so.4 #2 0x00007f3b7acf3e04 in ?? () from /usr/lib/libthreadweaver.so.4 #3 0x00007f3b7acf65b3 in ?? () from /usr/lib/libthreadweaver.so.4 #4 0x00007f3b7acf65cc in ?? () from /usr/lib/libthreadweaver.so.4 #5 0x00007f3b7acf4b2f in ?? () from /usr/lib/libthreadweaver.so.4 #6 0x00007f3b7acf4f89 in ThreadWeaver::Thread::run () from /usr/lib/libthreadweaver.so.4 #7 0x00007f3b7fcbd162 in ?? () from /usr/lib/libQtCore.so.4 #8 0x00007f3b7dc99fc7 in start_thread () from /lib/libpthread.so.0 #9 0x00007f3b7f9cd5ad in clone () from /lib/libc.so.6 #10 0x0000000000000000 in ?? () Thread 6 (Thread 0x45668950 (LWP 31495)): #0 0x00007f3b7dc9dd29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #1 0x00007f3b7fcbe159 in QWaitCondition::wait () from /usr/lib/libQtCore.so.4 #2 0x00007f3b7acf3e04 in ?? () from /usr/lib/libthreadweaver.so.4 #3 0x00007f3b7acf65b3 in ?? () from /usr/lib/libthreadweaver.so.4 #4 0x00007f3b7acf4b2f in ?? () from /usr/lib/libthreadweaver.so.4 #5 0x00007f3b7acf4f89 in ThreadWeaver::Thread::run () from /usr/lib/libthreadweaver.so.4 #6 0x00007f3b7fcbd162 in ?? () from /usr/lib/libQtCore.so.4 #7 0x00007f3b7dc99fc7 in start_thread () from /lib/libpthread.so.0 #8 0x00007f3b7f9cd5ad in clone () from /lib/libc.so.6 #9 0x0000000000000000 in ?? () Thread 5 (Thread 0x4666a950 (LWP 31498)): #0 0x00007f3b7f9c6ce2 in select () from /lib/libc.so.6 #1 0x00007f3b715a1304 in xine_usec_sleep () from /usr/lib/libxine.so.1 #2 0x00007f3b7158679b in ?? () from /usr/lib/libxine.so.1 #3 0x00007f3b7dc99fc7 in start_thread () from /lib/libpthread.so.0 #4 0x00007f3b7f9cd5ad in clone () from /lib/libc.so.6 #5 0x0000000000000000 in ?? () Thread 4 (Thread 0x46e6b950 (LWP 31499)): #0 0x00007f3b7dc9dd29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #1 0x00007f3b7157c6ab in ?? () from /usr/lib/libxine.so.1 #2 0x00007f3b7158247e in ?? () from /usr/lib/libxine.so.1 #3 0x00007f3b7dc99fc7 in start_thread () from /lib/libpthread.so.0 #4 0x00007f3b7f9cd5ad in clone () from /lib/libc.so.6 #5 0x0000000000000000 in ?? () Thread 3 (Thread 0x4766c950 (LWP 31500)): #0 0x00007f3b7dc9dd29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #1 0x00007f3b7157c6ab in ?? () from /usr/lib/libxine.so.1 #2 0x00007f3b7158352e in ?? () from /usr/lib/libxine.so.1 #3 0x00007f3b7dc99fc7 in start_thread () from /lib/libpthread.so.0 #4 0x00007f3b7f9cd5ad in clone () from /lib/libc.so.6 #5 0x0000000000000000 in ?? () Thread 2 (Thread 0x47e6d950 (LWP 31501)): #0 0x00007f3b7dc9dd29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #1 0x00007f3b7158c7eb in ?? () from /usr/lib/libxine.so.1 #2 0x00007f3b7dc99fc7 in start_thread () from /lib/libpthread.so.0 #3 0x00007f3b7f9cd5ad in clone () from /lib/libc.so.6 #4 0x0000000000000000 in ?? () Thread 1 (Thread 0x7f3b81d45730 (LWP 31477)): [KCrash Handler] #5 0x00007f3b7f92fed5 in raise () from /lib/libc.so.6 #6 0x00007f3b7f9313f3 in abort () from /lib/libc.so.6 #7 0x00007f3b7fcb55a5 in qt_message_output () from /usr/lib/libQtCore.so.4 #8 0x00007f3b7fcb56e7 in qFatal () from /usr/lib/libQtCore.so.4 #9 0x00007f3b80260a70 in Meta::Track::lessThan (left={d = 0x7fff89e8f580}, right={d = 0x7fff89e8f570}) at /usr/include/ksharedptr.h:116 #10 0x00007f3b801f2926 in Playlist::RandomAlbumNavigator::idLessThan (l=<value optimized out>, r=4871965752532983979) at ../../src/playlist/navigators/RandomAlbumNavigator.cpp:255 #11 0x00007f3b801f7da0 in QAlgorithmsPrivate::qMerge<QList<unsigned long long>::iterator, unsigned long long const, bool (*)(unsigned long long, unsigned long long)> (begin={i = 0x7fff89e8f6e0}, pivot={i = 0x7fff89e8f6d0}, end={i = 0x6}, t=@0x206, lessThan=0x7f3b7fc4c9b0 <_IO_stdfile_2_lock>) at /usr/include/qt4/QtCore/qalgorithms.h:448 #12 0x00007f3b801f811e in QAlgorithmsPrivate::qStableSortHelper<QList<unsigned long long>::iterator, unsigned long long, bool (*)(unsigned long long, unsigned long long)> (begin= {i = 0x7fff89e8f800}, end={i = 0x7fff89e8f810}, t=@0x4573af8, lessThan=0x7f3b801f28b0 <Playlist::RandomAlbumNavigator::idLessThan(unsigned long long, unsigned long long)>) at /usr/include/qt4/QtCore/qalgorithms.h:483 #13 0x00007f3b801f2d5e in Playlist::RandomAlbumNavigator::sortTheseAlbums (this=0x12f5940, al=<value optimized out>) at /usr/include/qt4/QtCore/qalgorithms.h:225 #14 0x00007f3b801f32ff in Playlist::RandomAlbumNavigator::recvInsertedIds (this=0x12f5940, list=<value optimized out>) at ../../src/playlist/navigators/RandomAlbumNavigator.cpp:75 #15 0x00007f3b80177cb7 in Playlist::RandomAlbumNavigator::qt_metacall (this=0x12f5940, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7fff89e8faa0) at moc_RandomAlbumNavigator.cpp:70 #16 0x00007f3b7fdb96e4 in QMetaObject::activate () from /usr/lib/libQtCore.so.4 #17 0x00007f3b80175f72 in Playlist::Model::insertedIds (this=0x7af5, _t1=<value optimized out>) at moc_PlaylistModel.cpp:87 #18 0x00007f3b801ec8ee in Playlist::Model::insertTracksCommand (this=0x1219240, cmds=@0x4303210) at ../../src/playlist/PlaylistModel.cpp:629 #19 0x00007f3b81401a48 in QUndoStack::push () from /usr/lib/libQtGui.so.4 #20 0x00007f3b801dfec2 in Playlist::Controller::insertionHelper (this=0x12f2130, row=1, tl=@0x7fff89e90170) at ../../src/playlist/PlaylistController.cpp:520 #21 0x00007f3b801e004e in Playlist::Controller::insertTracks (this=0x12f2130, row=1, tl= {{p = {static shared_null = {ref = {_q_value = 70937}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, d = 0x7fff89e90170}, d = 0x7fff89e90170}}) at ../../src/playlist/PlaylistController.cpp:199 #22 0x00007f3b801ef679 in Playlist::Model::dropMimeData (this=<value optimized out>, data=<value optimized out>, action=<value optimized out>, row=24250344, parent=@0x455e758) at ../../src/playlist/PlaylistModel.cpp:315 #23 0x00007f3b812eeacd in QAbstractItemView::dropEvent () from /usr/lib/libQtGui.so.4 #24 0x00007f3b8020aafb in Playlist::PrettyListView::dropEvent (this=0x1338610, event=0x7fff89e90e60) at ../../src/playlist/view/listview/PrettyListView.cpp:211 #25 0x00007f3b80ed4ab3 in QWidget::event () from /usr/lib/libQtGui.so.4 #26 0x00007f3b812f917d in QAbstractItemView::viewportEvent () from /usr/lib/libQtGui.so.4 #27 0x00007f3b7fda4668 in QCoreApplicationPrivate::sendThroughObjectEventFilters () from /usr/lib/libQtCore.so.4 #28 0x00007f3b80e82a2c in QApplicationPrivate::notify_helper () from /usr/lib/libQtGui.so.4 #29 0x00007f3b80e8acef in QApplication::notify () from /usr/lib/libQtGui.so.4 #30 0x00007f3b808c8fab in KApplication::notify () from /usr/lib/libkdeui.so.5 #31 0x00007f3b7fda5391 in QCoreApplication::notifyInternal () from /usr/lib/libQtCore.so.4 #32 0x00007f3b80efa5cb in ?? () from /usr/lib/libQtGui.so.4 #33 0x00007f3b80efedc7 in QDragManager::drop () from /usr/lib/libQtGui.so.4 #34 0x00007f3b80efef5c in QDragManager::eventFilter () from /usr/lib/libQtGui.so.4 #35 0x00007f3b7fda4714 in QCoreApplicationPrivate::sendThroughApplicationEventFilters () from /usr/lib/libQtCore.so.4 #36 0x00007f3b80e829c6 in QApplicationPrivate::notify_helper () from /usr/lib/libQtGui.so.4 #37 0x00007f3b80e8b04a in QApplication::notify () from /usr/lib/libQtGui.so.4 #38 0x00007f3b808c8fab in KApplication::notify () from /usr/lib/libkdeui.so.5 #39 0x00007f3b7fda5391 in QCoreApplication::notifyInternal () from /usr/lib/libQtCore.so.4 #40 0x00007f3b80e8a3e8 in QApplicationPrivate::sendMouseEvent () from /usr/lib/libQtGui.so.4 #41 0x00007f3b80eee939 in ?? () from /usr/lib/libQtGui.so.4 #42 0x00007f3b80eed82f in QApplication::x11ProcessEvent () from /usr/lib/libQtGui.so.4 #43 0x00007f3b80f14cb4 in ?? () from /usr/lib/libQtGui.so.4 #44 0x00007f3b7dee878b in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #45 0x00007f3b7deebf5d in ?? () from /usr/lib/libglib-2.0.so.0 #46 0x00007f3b7deec11b in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #47 0x00007f3b7fdcd71f in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4 #48 0x00007f3b80f1447f in ?? () from /usr/lib/libQtGui.so.4 #49 0x00007f3b7fda3cb2 in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4 #50 0x00007f3b7fda3e3d in QEventLoop::exec () from /usr/lib/libQtCore.so.4 #51 0x00007f3b80efd198 in QDragManager::drag () from /usr/lib/libQtGui.so.4 #52 0x00007f3b80e951c8 in QDrag::exec () from /usr/lib/libQtGui.so.4 #53 0x00007f3b812f6182 in QAbstractItemView::startDrag () from /usr/lib/libQtGui.so.4 #54 0x00007f3b802d80a3 in PlaylistBrowserNS::PodcastView::startDrag (this=0x16f0580, supportedActions={i = -1981208464}) at ../../src/browsers/playlistbrowser/PodcastCategory.cpp:382 #55 0x00007f3b812f4965 in QAbstractItemView::mouseMoveEvent () from /usr/lib/libQtGui.so.4 #56 0x00007f3b80ed4fa6 in QWidget::event () from /usr/lib/libQtGui.so.4 #57 0x00007f3b812f917d in QAbstractItemView::viewportEvent () from /usr/lib/libQtGui.so.4 #58 0x00007f3b8132dc00 in QTreeView::viewportEvent () from /usr/lib/libQtGui.so.4 #59 0x00007f3b7fda4668 in QCoreApplicationPrivate::sendThroughObjectEventFilters () from /usr/lib/libQtCore.so.4 #60 0x00007f3b80e82a2c in QApplicationPrivate::notify_helper () from /usr/lib/libQtGui.so.4 #61 0x00007f3b80e8b04a in QApplication::notify () from /usr/lib/libQtGui.so.4 #62 0x00007f3b808c8fab in KApplication::notify () from /usr/lib/libkdeui.so.5 #63 0x00007f3b7fda5391 in QCoreApplication::notifyInternal () from /usr/lib/libQtCore.so.4 #64 0x00007f3b80e8a3e8 in QApplicationPrivate::sendMouseEvent () from /usr/lib/libQtGui.so.4 #65 0x00007f3b80eee939 in ?? () from /usr/lib/libQtGui.so.4 #66 0x00007f3b80eed82f in QApplication::x11ProcessEvent () from /usr/lib/libQtGui.so.4 #67 0x00007f3b80f14cb4 in ?? () from /usr/lib/libQtGui.so.4 #68 0x00007f3b7dee878b in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #69 0x00007f3b7deebf5d in ?? () from /usr/lib/libglib-2.0.so.0 #70 0x00007f3b7deec11b in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #71 0x00007f3b7fdcd71f in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4 #72 0x00007f3b80f1447f in ?? () from /usr/lib/libQtGui.so.4 #73 0x00007f3b7fda3cb2 in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4 #74 0x00007f3b7fda3e3d in QEventLoop::exec () from /usr/lib/libQtCore.so.4 #75 0x00007f3b7fda62ed in QCoreApplication::exec () from /usr/lib/libQtCore.so.4 #76 0x0000000000404097 in main (argc=1, argv=0x7fff89e954d8) at ../../src/main.cpp:130 SVN commit 919714 by markey: Fix potential crash when adding podcast to the playlist (dereferencing 0-pointers). Hopefully I got the logic right here. Code review appreciated. BUG: 181187 M +15 -4 meta/Meta.cpp M +1 -0 playlist/navigators/RandomAlbumNavigator.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=919714 |