Bug 170247

Summary: Adding multiple shoutcast causes crash
Product: [Applications] amarok Reporter: Kristjan Ugrin <kristjan.ugrin>
Component: Internet ServicesAssignee: Amarok Developers <amarok-bugs-dist>
Status: RESOLVED FIXED    
Severity: crash CC: christoofar, nhn
Priority: NOR    
Version: 2.0-SVN   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: crash log

Description Kristjan Ugrin 2008-09-02 13:03:20 UTC
Version:           2.x svn (using KDE 4.1.1)
OS:                Linux
Installed from:    SuSE RPMs

Revision: 856201

When adding more than one shoutcast station at time into playlist causes amarok to crash.

1. Open internet tab
2. Select Shoutcast Directory service
3. Select and expand a genre
4. Select two or more stations and drag them into playlist

Amarok will crash at that point.
Comment 1 Mark Kretschmann 2008-09-13 12:31:43 UTC
Confirmed. Could you possibly get a backtrace of this?
Comment 2 Kristjan Ugrin 2008-09-13 14:55:45 UTC
Created attachment 27398 [details]
crash log

Provided
Comment 3 Mark Kretschmann 2008-09-14 14:37:38 UTC
I was now able to get a good backtrace:


Thread 1 (Thread 0x7f040bba37c0 (LWP 24855)):
[KCrash Handler]
#4  0x00007f0418f54095 in raise () from /lib/libc.so.6
#5  0x00007f0418f55af0 in abort () from /lib/libc.so.6
#6  0x00007f041a77a055 in qt_message_output () from /usr/lib/libQtCore.so.4
#7  0x00007f041a77a19d in qFatal () from /usr/lib/libQtCore.so.4
#8  0x00007f0419b680e6 in QList<Playlist::GraphicsItem*>::operator[] (this=0xb64f78, i=11) at /usr/include/qt4/QtCore/qlist.h:401
#9  0x00007f0419b65abe in Playlist::GraphicsView::rowsInserted (this=0xb64f50, parent=@0x7fff22fe0e00, start=12, end=16) at /home/mark/kde/src/amarok/src/playlist/PlaylistGraphicsView.cpp:342
#10 0x00007f0419b66b4d in Playlist::GraphicsView::qt_metacall (this=0xb64f50, _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0x7fff22fe0dd0)
    at /home/mark/kde/build/amarok/src/PlaylistGraphicsView.moc:93
#11 0x00007f041a8778b6 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#12 0x00007f041a8b0704 in QAbstractItemModel::rowsInserted () from /usr/lib/libQtCore.so.4
#13 0x00007f041a85d848 in QAbstractItemModel::endInsertRows () from /usr/lib/libQtCore.so.4
#14 0x00007f0419b6e630 in Playlist::Model::insertTracksCommand (this=0x6d1740, row=12, list=@0x7fff22fe1030) at /home/mark/kde/src/amarok/src/playlist/PlaylistModel.cpp:1173
#15 0x00007f0419b7cb74 in Playlist::AddTracksCmd::redo (this=0x114bfa0) at /home/mark/kde/src/amarok/src/playlist/UndoCommands.cpp:39
#16 0x00007f04184a9023 in QUndoStack::push () from /usr/lib/libQtGui.so.4
#17 0x00007f0419b70318 in Playlist::Model::insertTracks (this=0x6d1740, row=0, tracks=@0x7fff22fe1320) at /home/mark/kde/src/amarok/src/playlist/PlaylistModel.cpp:428
#18 0x00007f0419b70890 in Playlist::Model::insertOptioned (this=0x6d1740, list=@0x7fff22fe13f0, options=1) at /home/mark/kde/src/amarok/src/playlist/PlaylistModel.cpp:829
#19 0x00007f0419b70c67 in Playlist::Model::insertOptioned (this=0x6d1740, playlist=@0x7fff22fe1430, options=1) at /home/mark/kde/src/amarok/src/playlist/PlaylistModel.cpp:889
#20 0x00007f0419b72d7f in Playlist::Model::restoreSession (this=0x6d1740) at /home/mark/kde/src/amarok/src/playlist/PlaylistModel.cpp:125
#21 0x00007f0419ca8a5f in App::continueInit (this=0x7fff22fe2120) at /home/mark/kde/src/amarok/src/App.cpp:570
#22 0x00007f0419ca8d41 in App::qt_metacall (this=0x7fff22fe2120, _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0x7fff22fe17b0) at /home/mark/kde/build/amarok/src/App.moc:87
#23 0x00007f041a8778b6 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#24 0x00007f041a87dfff in ?? () from /usr/lib/libQtCore.so.4
#25 0x00007f041a8721d5 in QObject::event () from /usr/lib/libQtCore.so.4
#26 0x00007f0417f34acf in QApplicationPrivate::notify_helper () from /usr/lib/libQtGui.so.4
#27 0x00007f0417f36c85 in QApplication::notify () from /usr/lib/libQtGui.so.4
#28 0x00007f0418aec52e in KApplication::notify (this=0x7fff22fe2120, receiver=0x681cc0, event=0x7fff22fe1e20) at /home/mark/kde/src/kdelibs/kdeui/kernel/kapplication.cpp:311
#29 0x00007f041a8636b9 in QCoreApplication::notifyInternal () from /usr/lib/libQtCore.so.4
#30 0x00007f041a88ea0c in ?? () from /usr/lib/libQtCore.so.4
#31 0x00007f041a88c57d in ?? () from /usr/lib/libQtCore.so.4
#32 0x00007f04172763d4 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#33 0x00007f04172796e5 in ?? () from /usr/lib/libglib-2.0.so.0
#34 0x00007f0417279bcb in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#35 0x00007f041a88c9df in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4
#36 0x00007f0417fbe20f in ?? () from /usr/lib/libQtGui.so.4
#37 0x00007f041a862b35 in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#38 0x00007f041a862c8b in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#39 0x00007f041a864cd9 in QCoreApplication::exec () from /usr/lib/libQtCore.so.4
#40 0x0000000000403618 in main (argc=3, argv=0x7fff22fe32a8) at /home/mark/kde/src/amarok/src/main.cpp:127
Comment 4 Mark Kretschmann 2008-09-14 15:38:13 UTC
Fixed with SVN commit r860862 :)
Comment 5 Mark Kretschmann 2008-09-17 11:45:45 UTC
Sorry, had to revert my commit. Apparently it introduced regressions with appending tracks to playlist.
Comment 6 Nikolaj Hald Nielsen 2008-10-12 10:46:05 UTC
This seems to be fixed with the major playlist changes in current svn. Please reopen if you can still reproduce it.
Comment 7 Christopher Sawyer 2009-01-01 11:18:24 UTC
I am also getting this problem.   Here is my backtrace:


Application: Amarok (amarok), signal SIGSEGV
[?1034h[Thread debugging using libthread_db enabled]
[New Thread 0xa2a8fb90 (LWP 26312)]
[New Thread 0xa4ac5b90 (LWP 26311)]
[New Thread 0xa3a97b90 (LWP 26310)]
[New Thread 0xa3296b90 (LWP 26309)]
[New Thread 0xaf345b90 (LWP 28576)]
[New Thread 0xafb46b90 (LWP 28575)]
[New Thread 0xb0dffb90 (LWP 28573)]
[New Thread 0xb1f8cb90 (LWP 28572)]
[KCrash handler]
#6  0xb4c0cf0c in free () from /lib/libc.so.6
#7  0xb4dedec1 in operator delete(void*) () from /usr/lib/libstdc++.so.6
#8  0xb7ece395 in QEventLoop::~QEventLoop() () from /usr/lib/libQtCore.so.4
#9  0xb7eddc1f in QObjectPrivate::deleteChildren() ()
   from /usr/lib/libQtCore.so.4
#10 0xb7ee6763 in QObject::~QObject() () from /usr/lib/libQtCore.so.4
#11 0xb7a396f1 in KJob::~KJob() () from /usr/lib/libkdecore.so.5
#12 0xb7a38548 in KCompositeJob::~KCompositeJob() ()
   from /usr/lib/libkdecore.so.5
#13 0xb66343f8 in KIO::Job::~Job() () from /usr/lib/libkio.so.5
#14 0xb663442d in KIO::FileCopyJob::~FileCopyJob() () from /usr/lib/libkio.so.5
#15 0xb7edd90c in qDeleteInEventHandler(QObject*) ()
   from /usr/lib/libQtCore.so.4
#16 0xb7edf2b3 in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4
#17 0xb4f488fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
   from /usr/lib/libQtGui.so.4
#18 0xb4f5075e in QApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/libQtGui.so.4
#19 0xb73b741d in KApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/libkdeui.so.5
#20 0xb7ecf961 in QCoreApplication::notifyInternal(QObject*, QEvent*) ()
   from /usr/lib/libQtCore.so.4
#21 0xb7ed05d5 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQtCore.so.4
#22 0xb7ed07cd in QCoreApplication::sendPostedEvents(QObject*, int) ()
   from /usr/lib/libQtCore.so.4
#23 0xb7efa36f in ?? () from /usr/lib/libQtCore.so.4
#24 0xb4b039a8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#25 0xb4b07063 in ?? () from /usr/lib/libglib-2.0.so.0
#26 0xb4b07221 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#27 0xb7ef9fb8 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#28 0xb4fe1785 in ?? () from /usr/lib/libQtGui.so.4
#29 0xb7ece01a in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#30 0xb7ece1da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/libQtCore.so.4
#31 0xb7a39588 in KJob::exec() () from /usr/lib/libkdecore.so.5
#32 0xb7749e3e in Meta::loadPlaylist (url=@0x9b296f4)
    at /usr/src/debug/amarok-2.0/src/meta/PlaylistFileSupport.cpp:102
#33 0xb2af3642 in ShoutcastTrack::playableUrl (this=0x9b296e0)
    at /usr/src/debug/amarok-2.0/src/services/shoutcast/ShoutcastMeta.cpp:42
#34 0xb77f82ea in EngineController::play (this=0x81041c8, track=@0xbfefca34, 
    offset=0) at /usr/src/debug/amarok-2.0/src/EngineController.cpp:280
#35 0xb76bd8ec in Playlist::Actions::play (this=0x8313448, 
    trackid=2840967648663123470, now=true)
    at /usr/src/debug/amarok-2.0/src/playlist/PlaylistActions.cpp:155
#36 0xb76bda59 in Playlist::Actions::play (this=0x8313448, index=@0xb0e75328)
    at /usr/src/debug/amarok-2.0/src/playlist/PlaylistActions.cpp:135
#37 0xb76e0d76 in Playlist::PrettyListView::trackActivated (this=0x8432390, 
    idx=@0xb0e75328)
    at /usr/src/debug/amarok-2.0/src/playlist/view/listview/PrettyListView.cpp:118
#38 0xb765d582 in Playlist::PrettyListView::qt_metacall (this=0x8432390, 
    _c=QMetaObject::InvokeMetaMethod, _id=5, _a=0xbfefcbac)
    at /usr/src/debug/amarok-2.0/build/src/moc_PrettyListView.cpp:79
#39 0xb7ee4580 in QMetaObject::activate(QObject*, int, int, void**) ()
   from /usr/lib/libQtCore.so.4
#40 0xb7ee5302 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#41 0xb5408fe3 in QAbstractItemView::doubleClicked(QModelIndex const&) ()
   from /usr/lib/libQtGui.so.4
#42 0xb540adb1 in QAbstractItemView::mouseDoubleClickEvent(QMouseEvent*) ()
   from /usr/lib/libQtGui.so.4
#43 0xb4fa08b2 in QWidget::event(QEvent*) () from /usr/lib/libQtGui.so.4
#44 0xb52d6a83 in QFrame::event(QEvent*) () from /usr/lib/libQtGui.so.4
#45 0xb536d1bf in QAbstractScrollArea::viewportEvent(QEvent*) ()
   from /usr/lib/libQtGui.so.4
#46 0xb5417f3f in QAbstractItemView::viewportEvent(QEvent*) ()
   from /usr/lib/libQtGui.so.4
#47 0xb536f765 in ?? () from /usr/lib/libQtGui.so.4
#48 0xb7eceb3a in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#49 0xb4f488da in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
   from /usr/lib/libQtGui.so.4
#50 0xb4f51111 in QApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/libQtGui.so.4
#51 0xb73b741d in KApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/libkdeui.so.5
#52 0xb7ecf961 in QCoreApplication::notifyInternal(QObject*, QEvent*) ()
   from /usr/lib/libQtCore.so.4
#53 0xb4f5039e in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&) () from /usr/lib/libQtGui.so.4
#54 0xb4fba716 in ?? () from /usr/lib/libQtGui.so.4
#55 0xb4fb9ac5 in QApplication::x11ProcessEvent(_XEvent*) ()
   from /usr/lib/libQtGui.so.4
#56 0xb4fe208a in ?? () from /usr/lib/libQtGui.so.4
#57 0xb4b039a8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#58 0xb4b07063 in ?? () from /usr/lib/libglib-2.0.so.0
#59 0xb4b07221 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#60 0xb7ef9fb8 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#61 0xb4fe1785 in ?? () from /usr/lib/libQtGui.so.4
#62 0xb7ece01a in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#63 0xb7ece1da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/libQtCore.so.4
#64 0xb7a39588 in KJob::exec() () from /usr/lib/libkdecore.so.5
#65 0xb7749e3e in Meta::loadPlaylist (url=@0x9b296f4)
    at /usr/src/debug/amarok-2.0/src/meta/PlaylistFileSupport.cpp:102
#66 0xb2af3642 in ShoutcastTrack::playableUrl (this=0x9b296e0)
    at /usr/src/debug/amarok-2.0/src/services/shoutcast/ShoutcastMeta.cpp:42
#67 0xb77f835b in EngineController::setNextTrack (this=0x81041c8, track=
      {d = 0xbfefdfe0})
    at /usr/src/debug/amarok-2.0/src/EngineController.cpp:493
#68 0xb76bd95c in Playlist::Actions::play (this=0x8313448, 
    trackid=2840967648663123470, now=false)
    at /usr/src/debug/amarok-2.0/src/playlist/PlaylistActions.cpp:157
#69 0xb76bdc17 in Playlist::Actions::requestNextTrack (this=0x8313448)
    at /usr/src/debug/amarok-2.0/src/playlist/PlaylistActions.cpp:91
#70 0xb77f7638 in EngineController::slotAboutToFinish (this=0x81041c8)
    at /usr/src/debug/amarok-2.0/src/EngineController.cpp:577
#71 0xb77f89ef in EngineController::qt_metacall (this=0x81041c8, 
    _c=QMetaObject::InvokeMetaMethod, _id=26, _a=0xbfefe108)
    at /usr/src/debug/amarok-2.0/build/src/EngineController.moc:152
#72 0xb7ee4580 in QMetaObject::activate(QObject*, int, int, void**) ()
   from /usr/lib/libQtCore.so.4
#73 0xb7ee5302 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#74 0xb708e7c7 in Phonon::MediaObject::aboutToFinish() ()
   from /usr/lib/libphonon.so.4
#75 0xb708f3d0 in ?? () from /usr/lib/libphonon.so.4
#76 0xb70904f9 in Phonon::MediaObject::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib/libphonon.so.4
#77 0xb7ee4580 in QMetaObject::activate(QObject*, int, int, void**) ()
   from /usr/lib/libQtCore.so.4
#78 0xb7ee5302 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#79 0xb2e3e9d7 in ?? ()
   from /usr/lib/kde4/plugins/phonon_backend/phonon_gstreamer.so
#80 0xb2e428ad in ?? ()
   from /usr/lib/kde4/plugins/phonon_backend/phonon_gstreamer.so
#81 0xb7ee4580 in QMetaObject::activate(QObject*, int, int, void**) ()
   from /usr/lib/libQtCore.so.4
#82 0xb7ee5302 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#83 0xb7f1f7f7 in QTimer::timeout() () from /usr/lib/libQtCore.so.4
#84 0xb7eeaf9e in QTimer::timerEvent(QTimerEvent*) ()
   from /usr/lib/libQtCore.so.4
#85 0xb7edf04f in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4
#86 0xb4f488fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
   from /usr/lib/libQtGui.so.4
#87 0xb4f5075e in QApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/libQtGui.so.4
#88 0xb73b741d in KApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/libkdeui.so.5
#89 0xb7ecf961 in QCoreApplication::notifyInternal(QObject*, QEvent*) ()
   from /usr/lib/libQtCore.so.4
#90 0xb7efdb86 in ?? () from /usr/lib/libQtCore.so.4
#91 0xb7efa060 in ?? () from /usr/lib/libQtCore.so.4
#92 0xb4b039a8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#93 0xb4b07063 in ?? () from /usr/lib/libglib-2.0.so.0
#94 0xb4b07221 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#95 0xb7ef9fb8 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#96 0xb4fe1785 in ?? () from /usr/lib/libQtGui.so.4
#97 0xb7ece01a in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#98 0xb7ece1da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/libQtCore.so.4
#99 0xb7ed0895 in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#100 0xb4f48777 in QApplication::exec() () from /usr/lib/libQtGui.so.4
#101 0x0804c372 in main (argc=1, argv=0xbfefef94)
    at /usr/src/debug/amarok-2.0/src/main.cpp:131