Bug 232754

Summary: Amarok crashes on start @ StatusBar::signalLongMessage
Product: [Applications] amarok Reporter: John <rwae9jrze2>
Component: PlaybackAssignee: Amarok Developers <amarok-bugs-dist>
Status: RESOLVED DUPLICATE    
Severity: crash CC: jamundso, kretschmann, nhn
Priority: NOR    
Version: 2.3.1-GIT   
Target Milestone: 2.3.2   
Platform: Fedora RPMs   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: New crash information added by DrKonqi

Description John 2010-03-30 21:29:26 UTC
Application: amarok (2.3.0)
KDE Platform Version: 4.4.1 (KDE 4.4.1)
Qt Version: 4.6.2
Operating System: Linux 2.6.30.10-105.2.23.fc11.x86_64 x86_64
Distribution: "Fedora release 11 (Leonidas)"

-- Information about the crash:
Basically just started Amarok and it crashed. I do confess having i586 and x86_64 libraries on my 64-bit system due to getting Skype and other 32-bit applications to run.

 -- Backtrace:
Application: Amarok (amarok), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f393f01e820 (LWP 8512))]

Thread 3 (Thread 0x7f392e1a6910 (LWP 8514)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007f394569967b in QWaitConditionPrivate::wait (time=<value optimized out>, this=<value optimized out>) at thread/qwaitcondition_unix.cpp:87
#2  QWaitCondition::wait (time=<value optimized out>, this=<value optimized out>) at thread/qwaitcondition_unix.cpp:159
#3  0x00007f392f213059 in XmlParseJob::run (this=<value optimized out>) at /usr/src/debug/amarok-2.3.0/src/collection/sqlcollection/ScanManager.cpp:692
#4  0x00007f3942e8410d in ThreadWeaver::JobRunHelper::runTheJob (this=0x7f392e1a5ef0, th=0x2909bd0, job=0x27d6210) at /usr/src/debug/kdelibs-4.4.1/threadweaver/Weaver/Job.cpp:106
#5  0x00007f3942e8440e in ThreadWeaver::Job::execute (this=0x27d6210, th=0x2909bd0) at /usr/src/debug/kdelibs-4.4.1/threadweaver/Weaver/Job.cpp:135
#6  0x00007f3942e8337f in ThreadWeaver::ThreadRunHelper::run (this=0x7f392e1a5f80, parent=0x29f9b10, th=0x2909bd0) at /usr/src/debug/kdelibs-4.4.1/threadweaver/Weaver/Thread.cpp:95
#7  0x00007f3942e837e8 in ThreadWeaver::Thread::run (this=0x2909bd0) at /usr/src/debug/kdelibs-4.4.1/threadweaver/Weaver/Thread.cpp:142
#8  0x00007f39456986c5 in QThreadPrivate::start (arg=0x2909bd0) at thread/qthread_unix.cpp:248
#9  0x000000369b00685a in start_thread (arg=<value optimized out>) at pthread_create.c:297
#10 0x000000369a4de22d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f391bbb5910 (LWP 8517)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:220
#1  0x00007f392587e5c1 in ?? () from /usr/lib64/libxine.so.1
#2  0x000000369b00685a in start_thread (arg=<value optimized out>) at pthread_create.c:297
#3  0x000000369a4de22d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f393f01e820 (LWP 8512)):
[KCrash Handler]
#5  QObject::d_func (this=<value optimized out>) at kernel/qobject.h:125
#6  QMetaObject::activate (this=<value optimized out>) at kernel/qobject.cpp:3218
#7  0x00007f394643c523 in StatusBar::signalLongMessage (this=0x6, _t1=<value optimized out>, _t2=StatusBar::Error) at /usr/src/debug/amarok-2.3.0/x86_64-redhat-linux-gnu/src/StatusBar.moc:141
#8  0x00007f3946440f8e in StatusBar::longMessage (this=0x0, text=@0x7fffef37ecf0, type=StatusBar::Error) at /usr/src/debug/amarok-2.3.0/src/statusbar/StatusBar.cpp:276
#9  0x00007f39464d58fd in EngineController::supportedMimeTypes () at /usr/src/debug/amarok-2.3.0/src/EngineController.cpp:243
#10 0x00007f39464d5cad in EngineController::canDecode (url=@0x7fffef37ef90) at /usr/src/debug/amarok-2.3.0/src/EngineController.cpp:209
#11 0x00007f394635716f in CollectionManager::trackForUrl (this=<value optimized out>, url=@0x7fffef37ef90) at /usr/src/debug/amarok-2.3.0/src/collection/CollectionManager.cpp:502
#12 0x00007f394632930f in Meta::XSPFPlaylist::tracks (this=<value optimized out>) at /usr/src/debug/amarok-2.3.0/src/meta/XSPFPlaylist.cpp:202
#13 0x00007f394615cdef in Playlist::Model::Model(struct QObject *) (this=0x2546130, parent=<value optimized out>) at /usr/src/debug/amarok-2.3.0/src/playlist/PlaylistModel.cpp:77
#14 0x00007f3946162bf4 in Playlist::ModelStack::ModelStack (this=0x22d2ae0) at /usr/src/debug/amarok-2.3.0/src/playlist/PlaylistModelStack.cpp:63
#15 0x00007f3946162d78 in Playlist::ModelStack::instance () at /usr/src/debug/amarok-2.3.0/src/playlist/PlaylistModelStack.cpp:46
#16 0x00007f3946162da9 in The::playlistController () at /usr/src/debug/amarok-2.3.0/src/playlist/PlaylistModelStack.cpp:33
#17 0x00007f39464bd6ea in App::handleCliArgs () at /usr/src/debug/amarok-2.3.0/src/App.cpp:338
#18 0x00007f39464bead1 in App::newInstance (this=0x7fffef381c40) at /usr/src/debug/amarok-2.3.0/src/App.cpp:939
#19 0x00007f3946c95966 in KUniqueApplicationAdaptor::newInstance (this=0x261e720, asn_id=<value optimized out>, args=@0x2627280)
    at /usr/src/debug/kdelibs-4.4.1/kdeui/kernel/kuniqueapplication.cpp:459
#20 0x00007f3946c95fa2 in KUniqueApplicationAdaptor::qt_metacall (this=0x261e720, _c=QMetaObject::InvokeMetaMethod, _id=36, _a=0x7fffef37fbf0)
    at /usr/src/debug/kdelibs-4.4.1/x86_64-redhat-linux-gnu/kdeui/kuniqueapplication_p.moc:81
#21 0x00007f3943f8e77e in QDBusConnectionPrivate::deliverCall (this=<value optimized out>, object=<value optimized out>, msg=<value optimized out>, metaTypes=@0x7fffef37fce8, 
    slotIdx=<value optimized out>) at qdbusintegrator.cpp:904
#22 0x00007f3943f8f99f in QDBusConnectionPrivate::activateCall (this=<value optimized out>, object=0x261e720, flags=337, msg=@0x2628a80) at qdbusintegrator.cpp:809
#23 0x00007f3943f9046d in QDBusConnectionPrivate::activateObject (this=<value optimized out>, node=<value optimized out>, msg=@0x2628a80, pathStartPos=<value optimized out>)
    at qdbusintegrator.cpp:1364
#24 0x00007f3943f90708 in QDBusActivateObjectEvent::placeMetaCall (this=0x2628a10) at qdbusintegrator.cpp:1477
#25 0x00007f394579b861 in QObject::event (this=0x7fffef381c40, e=0x2628a10) at kernel/qobject.cpp:1248
#26 0x00007f3944b58ccd in QApplication::event (this=0x7fffef381c40, e=0x2628a10) at kernel/qapplication.cpp:2353
#27 0x00007f39464b6eec in App::event (this=0x6, event=0x7f3945831840) at /usr/src/debug/amarok-2.3.0/src/App.cpp:906
#28 0x00007f3944b54b3c in QApplicationPrivate::notify_helper (this=0x22f4c00, receiver=0x7fffef381c40, e=0x2628a10) at kernel/qapplication.cpp:4300
#29 0x00007f3944b5b06b in QApplication::notify (this=0x7fffef381c40, receiver=0x7fffef381c40, e=0x2628a10) at kernel/qapplication.cpp:4183
#30 0x00007f39464b750a in App::notify (this=0x6, receiver=0x7f3945831840, event=0x0) at /usr/src/debug/amarok-2.3.0/src/App.cpp:917
#31 0x00007f394578ba6c in QCoreApplication::notifyInternal (this=0x7fffef381c40, receiver=0x7fffef381c40, event=0x2628a10) at kernel/qcoreapplication.cpp:704
#32 0x00007f394578c8e7 in QCoreApplication::sendEvent (event=<value optimized out>, receiver=<value optimized out>) at kernel/qcoreapplication.h:215
#33 QCoreApplicationPrivate::sendPostedEvents (event=<value optimized out>, receiver=<value optimized out>) at kernel/qcoreapplication.cpp:1345
#34 0x00007f39457b5223 in QCoreApplication::sendPostedEvents () at kernel/qcoreapplication.h:220
#35 postEventSourceDispatch () at kernel/qeventdispatcher_glib.cpp:276
#36 0x000000369cc3790e in g_main_dispatch (context=<value optimized out>) at gmain.c:1824
#37 IA__g_main_context_dispatch (context=<value optimized out>) at gmain.c:2377
#38 0x000000369cc3b0e8 in g_main_context_iterate (context=0x22fb520, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>) at gmain.c:2455
#39 0x000000369cc3b20a in IA__g_main_context_iteration (context=0x22fb520, may_block=1) at gmain.c:2518
#40 0x00007f39457b4d63 in QEventDispatcherGlib::processEvents (this=0x21aa7b0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412
#41 0x00007f3944c029fe in QGuiEventDispatcherGlib::processEvents (this=0x6, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#42 0x00007f394578a3a2 in QEventLoop::processEvents (this=<value optimized out>, flags={i = 36}) at kernel/qeventloop.cpp:149
#43 0x00007f394578a77c in QEventLoop::exec (this=0x261b510, flags={i = 0}) at kernel/qeventloop.cpp:201
#44 0x0000003686646300 in Phonon::PulseSupport::PulseSupport (this=<value optimized out>) at /usr/src/debug/phonon-4.3.80/phonon/pulsesupport.cpp:688
#45 0x00000036866463af in Phonon::PulseSupport::getInstance () at /usr/src/debug/phonon-4.3.80/phonon/pulsesupport.cpp:639
#46 0x000000368662d044 in Phonon::AudioOutputPrivate::init (this=0x2341e30, c=<value optimized out>) at /usr/src/debug/phonon-4.3.80/phonon/audiooutput.cpp:102
#47 0x00007f39464cfa07 in EngineController::initializePhonon (this=0x26277a0) at /usr/src/debug/amarok-2.3.0/src/EngineController.cpp:122
#48 0x00007f39464d4d5d in EngineController::qt_metacall (this=0x26277a0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffef381020)
    at /usr/src/debug/amarok-2.3.0/x86_64-redhat-linux-gnu/src/EngineController.moc:147
#49 0x00007f3945794346 in QMetaMethod::invoke (this=0x7fffef3812d0, object=0x26277a0, connectionType=<value optimized out>, returnValue=
        {<QGenericArgument> = {_data = 0x0, _name = 0x0}, <No data fields>}, val0={_data = 0x0, _name = 0x0}, val1={_data = 0x0, _name = 0x0}, val2={_data = 0x0, _name = 0x0}, val3=
      {_data = 0x0, _name = 0x0}, val4={_data = 0x0, _name = 0x0}, val5={_data = 0x0, _name = 0x0}, val6={_data = 0x0, _name = 0x0}, val7={_data = 0x0, _name = 0x0}, val8={_data = 0x0, _name = 0x0}, 
    val9={_data = 0x0, _name = 0x0}) at kernel/qmetaobject.cpp:1533
#50 0x00007f39457949f6 in QMetaObject::invokeMethod (obj=0x26277a0, member=<value optimized out>, type=<value optimized out>, ret={<QGenericArgument> = {_data = 0x0, _name = 0x0}, <No data fields>}, 
    val0={_data = 0x0, _name = 0x0}, val1={_data = 0x0, _name = 0x0}, val2={_data = 0x0, _name = 0x0}, val3={_data = 0x0, _name = 0x0}, val4={_data = 0x0, _name = 0x0}, val5=
      {_data = 0x0, _name = 0x0}, val6={_data = 0x0, _name = 0x0}, val7={_data = 0x0, _name = 0x0}, val8={_data = 0x0, _name = 0x0}, val9={_data = 0x0, _name = 0x0}) at kernel/qmetaobject.cpp:1113
#51 0x00007f39465bfd85 in QMetaObject::invokeMethod (val9={_data = 0x0, _name = 0x0}, val8={_data = 0x0, _name = 0x0}, val7={_data = 0x0, _name = 0x0}, val6={_data = 0x0, _name = 0x0}, val5=
      {_data = 0x0, _name = 0x0}, val4={_data = 0x0, _name = 0x0}, val3={_data = 0x0, _name = 0x0}, val2={_data = 0x0, _name = 0x0}, val1={_data = 0x0, _name = 0x0}, val0={_data = 0x0, _name = 0x0}, 
    type=<value optimized out>, member=<value optimized out>, obj=<value optimized out>) at /usr/include/QtCore/qobjectdefs.h:398
#52 Amarok::DefaultApplicationController::initEngineController (val9={_data = 0x0, _name = 0x0}, val8={_data = 0x0, _name = 0x0}, val7={_data = 0x0, _name = 0x0}, val6={_data = 0x0, _name = 0x0}, 
    val5={_data = 0x0, _name = 0x0}, val4={_data = 0x0, _name = 0x0}, val3={_data = 0x0, _name = 0x0}, val2={_data = 0x0, _name = 0x0}, val1={_data = 0x0, _name = 0x0}, val0=
      {_data = 0x0, _name = 0x0}, type=<value optimized out>, member=<value optimized out>, obj=<value optimized out>)
    at /usr/src/debug/amarok-2.3.0/src/statemanagement/DefaultApplicationController.cpp:90
#53 0x00007f39465bfdb9 in Amarok::DefaultApplicationController::start (this=0x6) at /usr/src/debug/amarok-2.3.0/src/statemanagement/DefaultApplicationController.cpp:47
#54 0x00007f39464b8eca in App::continueInit (this=0x7fffef381c40) at /usr/src/debug/amarok-2.3.0/src/App.cpp:653
#55 0x00007f39464bbe51 in App::App (this=0x7fffef381c40) at /usr/src/debug/amarok-2.3.0/src/App.cpp:211
#56 0x0000000000408598 in main (argc=2, argv=0x7fffef383bb8) at /usr/src/debug/amarok-2.3.0/src/main.cpp:235

Reported using DrKonqi
Comment 1 Sven Krohlas 2010-03-30 22:28:34 UTC
We don't have a component for the statusbar, so I add you two manually.
Comment 2 jamundso 2010-04-03 00:23:39 UTC
Created attachment 42450 [details]
New crash information added by DrKonqi

I just typed "amarok VoiceMail.wav" to try to play the voicemail I'd saved as a file.
Comment 3 Nikolaj Hald Nielsen 2010-04-07 14:48:23 UTC
I cannot reproduce.

Is this crash consistent?
Comment 4 Mark Kretschmann 2010-04-07 15:19:17 UTC
This happens because the EngineController is now constructed before MainWindow exists (which includes StatusBar).

When EngineController::supportedMimeTypes() is called and no MP3 codec is found, it tries to print a message in the StatusBar, which crashes.
Comment 5 Myriam Schweingruber 2010-06-08 00:01:30 UTC
Any news on this?
Comment 6 Myriam Schweingruber 2010-06-24 10:44:18 UTC
Changing status, can somebody test this in latest git?
Comment 7 Christoph Feck 2010-08-07 21:14:58 UTC
This bug is believed to be caused by Phonon::PulseSupport starting an local event loop. This has been fixed in Phonon version 4.4.1. For a detailed discussion, see bug 228324.

If you can still reproduce the bug with Phonon version 4.4.1, or on older Phonon version that is not compiled with PulseAudio support, please reopen the bug.

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