Bug 281119 - Tomahawk crashes when trying to play a File via dilandau Resolver [@ Phonon::StreamInterface::enoughData]
Summary: Tomahawk crashes when trying to play a File via dilandau Resolver [@ Phonon::...
Status: RESOLVED NOT A BUG
Alias: None
Product: phonon-backend-gstreamer
Classification: Unmaintained
Component: general (show other bugs)
Version: 4.5.1
Platform: Ubuntu Linux
: NOR crash
Target Milestone: 4.5.2
Assignee: Harald Sitter
URL:
Keywords:
: 284702 285671 290776 291603 292395 296202 296451 296565 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-08-31 15:46 UTC by Stefan Derkits
Modified: 2013-03-04 06:01 UTC (History)
11 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Stefan Derkits 2011-08-31 15:46:57 UTC
Version:           unspecified (using KDE 4.7.0) 
OS:                Linux

When trying to play a Song resolved via dilandau, tomahawk crashes

Reproducible: Always

Steps to Reproduce:
-) Use Tomahawk Master
-) Use & install Dilandau Resolver from https://github.com/tomahawk-player/tomahawk-resolvers

Go to Charts, click on Coldplay. Wait until it resolves a few Songs and try to play one. Click a little bit through the Songs and when you click on Yellow it crashes. When you don't play anything before clicking on Yellow, most of the time it doesn't crash, so play something before and then Yellow. Make sure it comes from the Dilandau Resolver (e.g. by adding it to the queue to see the source of the song)

Actual Results:  
Tomahawk crashed cause of phonon-gst or gstreamer

Expected Results:  
no crash

Backtrace:

[Thread 0xa5c53b70 (LWP 11993) exited]
void AudioEngine::onStateChanged(Phonon::State, Phonon::State) 0 5 true
Phonon Error: "Invalid source type." 1
ASSERT: "d->connected" in file ../../phonon/streaminterface.cpp, line 89
 
Program received signal SIGABRT, Aborted.
0x00130416 in __kernel_vsyscall ()
(gdb) bt
#0  0x00130416 in __kernel_vsyscall ()
#1  0x02ecec8f in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#2  0x02ed22b5 in __GI_abort () at abort.c:92
#3  0x02a4a416 in qt_message_output (msgType=QtFatalMsg, buf=0xa2e8b38 "ASSERT: \"d->connected\" in file ../../phonon/streaminterface.cpp, line 89") at global/qglobal.cpp:2306
#4  0x02a4a84b in qt_message (msgType=QtFatalMsg, msg=0x2bb6008 "ASSERT: \"%s\" in file %s, line %d", ap=0xbfffe114 "\"\324d") at global/qglobal.cpp:2352
#5  0x02a4a968 in qFatal (msg=0x2bb6008 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2535
#6  0x02a4a9f5 in qt_assert (assertion=0x64d422 "d->connected", file=0x64d3a4 "../../phonon/streaminterface.cpp", line=89) at global/qglobal.cpp:2030
#7  0x00640fc8 in Phonon::StreamInterface::enoughData (this=0x9c97e30) at ../../phonon/streaminterface.cpp:89
#8  0x05162783 in Phonon::Gstreamer::StreamReader::unlock (this=0x9c97e28) at ../../gstreamer/streamreader.cpp:164
#9  0x0515e762 in Phonon::Gstreamer::phonon_src_unlock (basesrc=0x868c5f8) at ../../gstreamer/phononsrc.cpp:264
#10 0x036bc793 in gst_base_src_set_flushing (basesrc=0x868c5f8, flushing=1, live_play=0, unlock=1, playing=0x0) at gstbasesrc.c:2838
#11 0x036befb8 in gst_base_src_activate_push (pad=0x869c198, active=0) at gstbasesrc.c:2979
#12 0x03745648 in gst_pad_activate_push (pad=0x869c198, active=0) at gstpad.c:953
#13 0x037463e1 in gst_pad_set_active (pad=0x869c198, active=0) at gstpad.c:715
#14 0x0372291c in activate_pads (pad=0x869c198, ret=0xbfffe3bc, active=0xbfffe41c) at gstelement.c:2802
#15 0x03736cb3 in gst_iterator_fold (it=0xa3a5928, func=0x37228f0 <activate_pads>, ret=0xbfffe3bc, user_data=0xbfffe41c) at gstiterator.c:549
#16 0x0372283c in iterator_activate_fold_with_resync (iter=0xa3a5928, func=0x37228f0 <activate_pads>, user_data=0xbfffe41c) at gstelement.c:2834
#17 0x037253a1 in gst_element_pads_activate (element=0x868c5f8, active=0) at gstelement.c:2870
#18 0x03725749 in gst_element_change_state_func (element=0x868c5f8, transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstelement.c:2960
#19 0x036c2933 in gst_base_src_change_state (element=0x868c5f8, transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstbasesrc.c:3097
#20 0x0372777b in gst_element_change_state (element=0x868c5f8, transition=GST_STATE_CHANGE_PAUSED_TO_READY) at gstelement.c:2718
#21 0x03728235 in gst_element_set_state_func (element=0x868c5f8, state=GST_STATE_READY) at gstelement.c:2674
#22 0x037274b1 in gst_element_set_state (element=0x868c5f8, state=GST_STATE_READY) at gstelement.c:2575
#23 0x03712856 in gst_bin_element_set_state (next=GST_STATE_READY, current=GST_STATE_READY, start_time=0, base_time=0, element=0x868c5f8, bin=0x8697040) at gstbin.c:2193
#24 gst_bin_change_state_func (element=0x8697040, transition=18) at gstbin.c:2489
#25 0x0374a550 in gst_pipeline_change_state (element=0x8697040, transition=18) at gstpipeline.c:482
#26 0x0372777b in gst_element_change_state (element=0x8697040, transition=18) at gstelement.c:2718
#27 0x03728235 in gst_element_set_state_func (element=0x8697040, state=GST_STATE_READY) at gstelement.c:2674
#28 0x037274b1 in gst_element_set_state (element=0x8697040, state=GST_STATE_READY) at gstelement.c:2575
#29 0x0515557d in Phonon::Gstreamer::MediaObject::setError (this=0x8690aa8, errorString=..., error=Phonon::FatalError) at ../../gstreamer/mediaobject.cpp:899
#30 0x05155723 in Phonon::Gstreamer::MediaObject::handleErrorMessage (this=0x8690aa8, gstMessage=0xa43d190) at ../../gstreamer/mediaobject.cpp:1483
#31 0x0515bd43 in Phonon::Gstreamer::MediaObject::qt_metacall (this=0x8690aa8, _c=QMetaObject::InvokeMetaMethod, _id=33, _a=0xab520748) at ./moc_mediaobject.cpp:194
#32 0x02b55bed in metacall (argv=0xab520748, idx=37, cl=QMetaObject::InvokeMetaMethod, object=0x8690aa8) at kernel/qmetaobject.cpp:237
#33 QMetaObject::metacall (object=0x8690aa8, cl=QMetaObject::InvokeMetaMethod, idx=37, argv=0xab520748) at kernel/qmetaobject.cpp:232
#34 0x02b60635 in QMetaCallEvent::placeMetaCall (this=0xa8590980, object=0x8690aa8) at kernel/qobject.cpp:535
#35 0x02b67b02 in QObject::event (this=0x8690aa8, e=0xa8590980) at kernel/qobject.cpp:1217
#36 0x01f05314 in notify_helper (e=0xa8590980, receiver=0x8690aa8, this=0x81f7480) at kernel/qapplication.cpp:4467
#37 QApplicationPrivate::notify_helper (this=0x81f7480, receiver=0x8690aa8, e=0xa8590980) at kernel/qapplication.cpp:4439
#38 0x01f0a6c3 in QApplication::notify (this=0xa8590980, receiver=0x8690aa8, e=0xa8590980) at kernel/qapplication.cpp:3867
#39 0x02b4f20e in QCoreApplication::notifyInternal (this=0xbfffefbc, receiver=0x8690aa8, event=0xa8590980) at kernel/qcoreapplication.cpp:731
#40 0x02b53003 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#41 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x81f7580) at kernel/qcoreapplication.cpp:1372
#42 0x02b5315c in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1265
#43 0x02b7d6a4 in sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#44 postEventSourceDispatch (s=0x81fa4d0) at kernel/qeventdispatcher_glib.cpp:277
#45 0x0386781f in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#46 0x03867f50 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#47 0x038681ea in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#48 0x02b7dada in QEventDispatcherGlib::processEvents (this=0x81f8138, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#49 0x01fbcdea in QGuiEventDispatcherGlib::processEvents (this=0x81f8138, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#50 0x02b4e24d in QEventLoop::processEvents (this=0xbfffef34, flags=...) at kernel/qeventloop.cpp:149
#51 0x02b4e491 in QEventLoop::exec (this=0xbfffef34, flags=...) at kernel/qeventloop.cpp:201
#52 0x02b5320d in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1008
#53 0x01f02eb4 in QApplication::exec () at kernel/qapplication.cpp:3741
#54 0x080963e9 in main (argc=1, argv=0xbffff134) at /home/t95012/src/tomahawk/src/main.cpp:64
(gdb)
Comment 1 Stefan Derkits 2011-08-31 15:47:59 UTC
one more thing ... tried with phonon-vlc and even though the song doesn't play (can be cause of weird redirects, the original url of the song is "http://www.tuelf.com/?url=http://www.liollo.com/listen/968fe16/Yellow - coldplay") it doesn't crash
Comment 2 Myriam Schweingruber 2011-10-25 11:39:33 UTC
*** Bug 284702 has been marked as a duplicate of this bug. ***
Comment 3 Myriam Schweingruber 2011-11-04 10:08:52 UTC
*** Bug 285671 has been marked as a duplicate of this bug. ***
Comment 4 Myriam Schweingruber 2011-11-04 10:09:16 UTC
Confirmed by duplicates.
Comment 5 Myriam Schweingruber 2012-01-06 10:52:51 UTC
*** Bug 290776 has been marked as a duplicate of this bug. ***
Comment 6 Torrie Fischer 2012-01-17 15:38:25 UTC
A lot of the streaming code has been reworked for 4.6. Could you possibly test this with 4.5.90 or latest git?
Comment 7 Myriam Schweingruber 2012-01-25 21:02:16 UTC
*** Bug 292395 has been marked as a duplicate of this bug. ***
Comment 8 Myriam Schweingruber 2012-01-29 10:38:43 UTC
*** Bug 291603 has been marked as a duplicate of this bug. ***
Comment 9 Tommi Tervo 2012-03-20 19:35:14 UTC
*** Bug 296451 has been marked as a duplicate of this bug. ***
Comment 10 Myriam Schweingruber 2012-04-22 12:50:24 UTC
*** Bug 296565 has been marked as a duplicate of this bug. ***
Comment 11 Torrie Fischer 2012-05-16 18:06:14 UTC
Phonon-GStreamer 4.6.0 has been out for a while and may fix this issue. Could you test and see if it is still around?
Comment 12 Myriam Schweingruber 2012-07-30 20:18:03 UTC
Closing for lack of feedback. Please feel free to reopen this report if you can reproduce this with the gstreamer backend version 4.6.1 or later and provide a valid backtrace.
Comment 13 Jekyll Wu 2013-03-04 06:01:17 UTC
*** Bug 296202 has been marked as a duplicate of this bug. ***