Bug 313198 - Amarok crash while changing playback cursor position
Summary: Amarok crash while changing playback cursor position
Status: RESOLVED DUPLICATE of bug 313688
Alias: None
Product: amarok
Classification: Applications
Component: Playback/Streams (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR major
Target Milestone: 2.7
Assignee: Amarok Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-01-13 18:49 UTC by dariusberghe
Modified: 2013-01-29 18:56 UTC (History)
0 users

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


Attachments
The backtrace of the bug (46.75 KB, text/plain)
2013-01-29 01:02 UTC, dariusberghe
Details

Note You need to log in before you can comment on or make changes to this bug.
Description dariusberghe 2013-01-13 18:49:36 UTC
This happens only on internet streams (I tried Jamendo, Librivox and Mangatune).
It constantly reproduces. The error is Segmentation Fault (11).

I'm on Kubuntu 12.10, Linux 3.5.0-21-generic, x86_64.
If you need more info I'll gladly give it to you.

Reproducible: Always

Steps to Reproduce:
1. open internet stream
2. change playback cursor position

Actual Results:  
Segmentation fault
Comment 1 Myriam Schweingruber 2013-01-13 21:16:32 UTC
Which exact Amarok version is this about? Please also speicfy your KDE and Qt version. Also, if there is a crash, we need a backtrace, please try to reproduce this with gdb, as suggested here: http://techbase.kde.org/Development/Tutorials/Debugging/How_to_create_useful_crash_reports

FWIW: you should try at least Amarok 2.6.0, better even Amarok 2.6.90 aka 2.7 beta 1, as we are about to release Amarok 2.7 in a few days.

Since there are known problems with the Phonon-backend-gstreamer regarding internet streams, you should also try to reproduce this with the Phonon-backend-vlc instead.
Comment 2 Myriam Schweingruber 2013-01-22 19:58:02 UTC
Any news about this?
Comment 3 dariusberghe 2013-01-29 01:02:03 UTC
Created attachment 76779 [details]
The backtrace of the bug
Comment 4 dariusberghe 2013-01-29 01:09:36 UTC
I'm really-really sorry for taking so long to respond. 

For the backtrace above, I just opened a network stream from Jamendo, the music started playing, i changed the position of the cursor and it happened. I followed the instructions on the link you gave me and installed amarok-dbg. When the bug handler window came up, i switched to 'developer information' tab and installed using the GUI some packages that were required to generate a complete report.

So,
KDE 4.9.5
Qt 3.8.3
Amarok 2.7.0

Damn, you have such a nice and intuitive debugging system!! 
I hope this helps.
Comment 5 dariusberghe 2013-01-29 01:11:30 UTC
I'm sorry. Qt version is 4.8.3 not 3.8.3 as stated above. It is a typo.
Comment 6 Myriam Schweingruber 2013-01-29 09:26:15 UTC
Please always paste a backtrace in the comment, else it is not searchable. As the backtrace below shows, this is a problem with upstream gstreamer, and a duplicate of many.

Thread 1 (Thread 0x7f6f506f17c0 (LWP 14125)):
[KCrash Handler]
#6  0x00007f6eed3f7e4e in gst_ogg_pad_src_query (pad=<optimized out>, query=0x1088e40) at gstoggdemux.c:336
#7  0x00007f6f2c5387ba in gst_multi_queue_src_query (pad=<optimized out>, query=0x1088e40) at gstmultiqueue.c:1627
#8  0x00007f6f3f94e930 in gst_pad_dispatcher (pad=pad@entry=0x7f6edc01e4b0, dispatch=dispatch@entry=0x7f6f3f9493c0 <gst_pad_query>, data=data@entry=0x1088e40) at gstpad.c:3706
#9  0x00007f6f3f94e9df in gst_pad_query_default (pad=pad@entry=0x7f6edc01e4b0, query=query@entry=0x1088e40) at gstpad.c:3850
#10 0x00007f6f2d394c32 in gst_audio_decoder_src_query (pad=0x7f6edc01e4b0, query=0x1088e40) at gstaudiodecoder.c:1970
#11 0x00007f6f3f93c083 in gst_proxy_pad_query_default (pad=<optimized out>, query=0x1088e40) at gstghostpad.c:161
#12 0x00007f6f3f93c083 in gst_proxy_pad_query_default (pad=<optimized out>, query=0x1088e40) at gstghostpad.c:161
#13 0x00007f6f3f94eb9f in gst_pad_peer_query (pad=pad@entry=0x7f6ed0008190, query=query@entry=0x1088e40) at gstpad.c:3810
#14 0x00007f6f2c532c4a in gst_input_selector_query (pad=<optimized out>, query=0x1088e40) at gstinputselector.c:1436
#15 0x00007f6f3f93c083 in gst_proxy_pad_query_default (pad=<optimized out>, query=0x1088e40) at gstghostpad.c:161
#16 0x00007f6f3f94e930 in gst_pad_dispatcher (pad=0x7f6ed0012cc0, dispatch=0x7f6f3f9493c0 <gst_pad_query>, data=0x1088e40) at gstpad.c:3706
#17 0x00007f6f3f94eb9f in gst_pad_peer_query (pad=pad@entry=0x7f6ed00129c0, query=query@entry=0x1088e40) at gstpad.c:3810
#18 0x00007f6f23deec04 in gst_stream_synchronizer_query (pad=0x7f6ed0012b40, query=0x1088e40) at gststreamsynchronizer.c:152
#19 0x00007f6f3f93c083 in gst_proxy_pad_query_default (pad=<optimized out>, query=0x1088e40) at gstghostpad.c:161
#20 0x00007f6f2c53bc6f in gst_queue_handle_src_query (pad=<optimized out>, query=0x1088e40) at gstqueue.c:1334
#21 0x00007f6f3f93c083 in gst_proxy_pad_query_default (pad=<optimized out>, query=0x1088e40) at gstghostpad.c:161
#22 0x00007f6f3f94eb9f in gst_pad_peer_query (pad=pad@entry=0x7f6ed00123c0, query=query@entry=0x1088e40) at gstpad.c:3810
#23 0x00007f6f3fc07762 in gst_base_transform_default_query (trans=0x7f6ed0014060, direction=GST_PAD_SRC, query=0x1088e40) at gstbasetransform.c:1335
#24 0x00007f6f3fc05f70 in gst_base_transform_query (pad=0x7f6ed0012540, query=0x1088e40) at gstbasetransform.c:1356
#25 0x00007f6f3f94e930 in gst_pad_dispatcher (pad=pad@entry=0x7f6ed0012840, dispatch=dispatch@entry=0x7f6f3f9493c0 <gst_pad_query>, data=data@entry=0x1088e40) at gstpad.c:3706
#26 0x00007f6f3f94e9df in gst_pad_query_default (pad=pad@entry=0x7f6ed0012840, query=query@entry=0x1088e40) at gstpad.c:3850
#27 0x00007f6f2c30f24f in gst_audio_resample_query (pad=0x7f6ed0012840, query=0x1088e40) at gstaudioresample.c:1322
#28 0x00007f6f3f93c083 in gst_proxy_pad_query_default (pad=<optimized out>, query=0x1088e40) at gstghostpad.c:161
#29 0x00007f6f3f93c083 in gst_proxy_pad_query_default (pad=<optimized out>, query=0x1088e40) at gstghostpad.c:161
#30 0x00007f6f2c53bc6f in gst_queue_handle_src_query (pad=<optimized out>, query=0x1088e40) at gstqueue.c:1334
#31 0x00007f6f3f94e930 in gst_pad_dispatcher (pad=0xc17600, dispatch=0x7f6f3f9493c0 <gst_pad_query>, data=0x1088e40) at gstpad.c:3706
#32 0x00007f6f3f93c083 in gst_proxy_pad_query_default (pad=<optimized out>, query=0x1088e40) at gstghostpad.c:161
#33 0x00007f6f2c53bc6f in gst_queue_handle_src_query (pad=<optimized out>, query=0x1088e40) at gstqueue.c:1334
#34 0x00007f6f3f94eb9f in gst_pad_peer_query (pad=pad@entry=0xc17300, query=query@entry=0x1088e40) at gstpad.c:3810
#35 0x00007f6f3fc07762 in gst_base_transform_default_query (trans=0x11d9060, direction=GST_PAD_SRC, query=0x1088e40) at gstbasetransform.c:1335
#36 0x00007f6f3fc05f70 in gst_base_transform_query (pad=0xc17480, query=0x1088e40) at gstbasetransform.c:1356
#37 0x00007f6f3f94eb9f in gst_pad_peer_query (pad=pad@entry=0x11dac90, query=query@entry=0x1088e40) at gstpad.c:3810
#38 0x00007f6f3fc07762 in gst_base_transform_default_query (trans=0x1252420, direction=GST_PAD_SRC, query=0x1088e40) at gstbasetransform.c:1335
#39 0x00007f6f3fc05f70 in gst_base_transform_query (pad=0x11dae10, query=0x1088e40) at gstbasetransform.c:1356
#40 0x00007f6f3f93c083 in gst_proxy_pad_query_default (pad=<optimized out>, query=0x1088e40) at gstghostpad.c:161
#41 0x00007f6f3f94e930 in gst_pad_dispatcher (pad=0xc17780, dispatch=0x7f6f3f9493c0 <gst_pad_query>, data=0x1088e40) at gstpad.c:3706
#42 0x00007f6f3f93c083 in gst_proxy_pad_query_default (pad=<optimized out>, query=0x1088e40) at gstghostpad.c:161
#43 0x00007f6f2c53bc6f in gst_queue_handle_src_query (pad=<optimized out>, query=0x1088e40) at gstqueue.c:1334
#44 0x00007f6f3f94eb9f in gst_pad_peer_query (pad=pad@entry=0x104c4f0, query=query@entry=0x1088e40) at gstpad.c:3810
#45 0x00007f6f3fc07762 in gst_base_transform_default_query (trans=0x11d8160, direction=GST_PAD_SRC, query=0x1088e40) at gstbasetransform.c:1335
#46 0x00007f6f3fc05f70 in gst_base_transform_query (pad=0x104c370, query=0x1088e40) at gstbasetransform.c:1356
#47 0x00007f6f3f94e930 in gst_pad_dispatcher (pad=pad@entry=0x104cc70, dispatch=dispatch@entry=0x7f6f3f9493c0 <gst_pad_query>, data=data@entry=0x1088e40) at gstpad.c:3706
#48 0x00007f6f3f94e9df in gst_pad_query_default (pad=pad@entry=0x104cc70, query=query@entry=0x1088e40) at gstpad.c:3850
#49 0x00007f6f2c30f24f in gst_audio_resample_query (pad=0x104cc70, query=0x1088e40) at gstaudioresample.c:1322
#50 0x00007f6f3f94eb9f in gst_pad_peer_query (pad=pad@entry=0x104c1f0, query=query@entry=0x1088e40) at gstpad.c:3810
#51 0x00007f6f3fc07762 in gst_base_transform_default_query (trans=0x1252030, direction=GST_PAD_SRC, query=0x1088e40) at gstbasetransform.c:1335
#52 0x00007f6f3fc05f70 in gst_base_transform_query (pad=0x104c670, query=0x1088e40) at gstbasetransform.c:1356
#53 0x00007f6f3f94eb9f in gst_pad_peer_query (pad=0x104c070, query=query@entry=0x1088e40) at gstpad.c:3810
#54 0x00007f6f3fbf764d in default_element_query (element=0x1049480, query=0x1088e40) at gstbasesink.c:4943
#55 0x00007f6f2d39fbe9 in gst_base_audio_sink_query (element=0x1049480, query=0x1088e40) at gstbaseaudiosink.c:538
#56 0x00007f6f3f91ee39 in bin_query_generic_fold (item=0x1049480, ret=0x7fffc660f950, fold=0x7fffc660f970) at gstbin.c:3593
#57 0x00007f6f3f9432d6 in gst_iterator_fold (it=it@entry=0x343e720, func=func@entry=0x7f6f3f91ee10 <bin_query_generic_fold>, ret=ret@entry=0x7fffc660f950, user_data=user_data@entry=0x7fffc660f970) at gstiterator.c:549
#58 0x00007f6f3f922beb in gst_bin_query (element=0xe5c000, query=0x1088e40) at gstbin.c:3693
#59 0x00007f6f3f91ee39 in bin_query_generic_fold (item=0xe5c000, ret=0x7fffc660fa80, fold=0x7fffc660faa0) at gstbin.c:3593
#60 0x00007f6f3f9432d6 in gst_iterator_fold (it=it@entry=0x3124690, func=func@entry=0x7f6f3f91ee10 <bin_query_generic_fold>, ret=ret@entry=0x7fffc660fa80, user_data=user_data@entry=0x7fffc660faa0) at gstiterator.c:549
#61 0x00007f6f3f922beb in gst_bin_query (element=0xe5c170, query=0x1088e40) at gstbin.c:3693
#62 0x00007f6f3f91ee39 in bin_query_generic_fold (item=0xe5c170, ret=0x7fffc660fbb0, fold=0x7fffc660fbd0) at gstbin.c:3593
#63 0x00007f6f3f9432d6 in gst_iterator_fold (it=it@entry=0xbfbc40, func=func@entry=0x7f6f3f91ee10 <bin_query_generic_fold>, ret=ret@entry=0x7fffc660fbb0, user_data=user_data@entry=0x7fffc660fbd0) at gstiterator.c:549
#64 0x00007f6f3f922beb in gst_bin_query (element=0xe5cb80, query=0x1088e40) at gstbin.c:3693
#65 0x00007f6f3f91ee39 in bin_query_generic_fold (item=0xe5cb80, ret=0x7fffc660fce0, fold=0x7fffc660fd00) at gstbin.c:3593
#66 0x00007f6f3f9432d6 in gst_iterator_fold (it=it@entry=0x3103550, func=func@entry=0x7f6f3f91ee10 <bin_query_generic_fold>, ret=ret@entry=0x7fffc660fce0, user_data=user_data@entry=0x7fffc660fd00) at gstiterator.c:549
#67 0x00007f6f3f922beb in gst_bin_query (element=0x1266000, query=0x1088e40) at gstbin.c:3693
#68 0x00007f6f3f91ee39 in bin_query_generic_fold (item=0x1266000, ret=0x7fffc660fe10, fold=0x7fffc660fe30) at gstbin.c:3593
#69 0x00007f6f3f9432d6 in gst_iterator_fold (it=it@entry=0x1f5fe80, func=func@entry=0x7f6f3f91ee10 <bin_query_generic_fold>, ret=ret@entry=0x7fffc660fe10, user_data=user_data@entry=0x7fffc660fe30) at gstiterator.c:549
#70 0x00007f6f3f922beb in gst_bin_query (element=0x125fc00, query=0x1088e40) at gstbin.c:3693
#71 0x00007f6f23dcb95b in gst_play_bin_query (element=0x125fc00, query=0x1088e40) at gstplaybin2.c:2240
#72 0x00007f6f32b28362 in Phonon::Gstreamer::Pipeline::isSeekable (this=0xa42d70) at ../../gstreamer/pipeline.cpp:771
#73 0x00007f6f4f810ed1 in ProgressWidget::trackPositionChanged (this=0x1781600, position=16956) at ../../src/widgets/ProgressWidget.cpp:225
#74 0x00007f6f4d95af5f in QMetaObject::activate (sender=0xd81cc0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffc6610070) at kernel/qobject.cpp:3547
#75 0x00007f6f4f2ee1b0 in EngineController::trackPositionChanged (this=<optimized out>, _t1=16956, _t2=true) at moc_EngineController.cpp:338
#76 0x00007f6f4f6ebef2 in EngineController::seek (this=0xd81cc0, ms=<optimized out>) at ../../src/EngineController.cpp:599
#77 0x00007f6f4f2f08d3 in EngineController::qt_static_metacall (_o=0xd81cc0, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at moc_EngineController.cpp:177
#78 0x00007f6f4d95af5f in QMetaObject::activate (sender=0x1778980, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffc6610290) at kernel/qobject.cpp:3547
#79 0x00007f6f4f814e8e in Amarok::Slider::sliderReleased (this=this@entry=0x1778980, _t1=16956) at ./SliderWidget.moc:98
#80 0x00007f6f4f815604 in Amarok::Slider::mouseReleaseEvent (this=0x1778980) at ../../src/widgets/SliderWidget.cpp:185
#81 0x00007f6f4e376850 in QWidget::event (this=0x1778980, event=0x7fffc6610b40) at kernel/qwidget.cpp:8371
#82 0x00007f6f4f8141f6 in Amarok::TimeSlider::event (this=0x1778980, event=0x7fffc6610b40) at ../../src/widgets/SliderWidget.cpp:415
#83 0x00007f6f4e326e9c in QApplicationPrivate::notify_helper (this=this@entry=0xc105f0, receiver=receiver@entry=0x1778980, e=e@entry=0x7fffc6610b40) at kernel/qapplication.cpp:4562
#84 0x00007f6f4e32bb6b in QApplication::notify (this=<optimized out>, receiver=0x1778980, e=0x7fffc6610b40) at kernel/qapplication.cpp:4105
#85 0x00007f6f501001f6 in KApplication::notify (this=0x7fffc6613a70, receiver=0x1778980, event=0x7fffc6610b40) at ../../kdeui/kernel/kapplication.cpp:311
#86 0x00007f6f4d94556e in QCoreApplication::notifyInternal (this=0x7fffc6613a70, receiver=0x1778980, event=0x7fffc6610b40) at kernel/qcoreapplication.cpp:915
#87 0x00007f6f4e327cd3 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#88 QApplicationPrivate::sendMouseEvent (receiver=0x1778980, event=0x7fffc6610b40, alienWidget=0x1778980, nativeWidget=0x175e5f0, buttonDown=0x7f6f4ee03308 <qt_button_down>, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3173
#89 0x00007f6f4e3a5554 in QETWidget::translateMouseEvent (this=this@entry=0x175e5f0, event=event@entry=0x7fffc66112c0) at kernel/qapplication_x11.cpp:4622
#90 0x00007f6f4e3a444f in QApplication::x11ProcessEvent (this=0x7fffc6613a70, event=0x7fffc66112c0) at kernel/qapplication_x11.cpp:3737
#91 0x00007f6f4e3cbfa2 in x11EventSourceDispatch (s=0xc11480, callback=0x0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#92 0x00007f6f47a37ab5 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#93 0x00007f6f47a37de8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#94 0x00007f6f47a37ea4 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#95 0x00007f6f4d973bf6 in QEventDispatcherGlib::processEvents (this=0xa1dad0, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#96 0x00007f6f4e3cbc1e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#97 0x00007f6f4d9442bf in QEventLoop::processEvents (this=this@entry=0x7fffc6611690, flags=...) at kernel/qeventloop.cpp:149
#98 0x00007f6f4d944548 in QEventLoop::exec (this=0x7fffc6611690, flags=...) at kernel/qeventloop.cpp:204
#99 0x00007f6f4d949708 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1187
#100 0x000000000040909a in main (argc=2, argv=0x7fffc6613bd8) at ../../src/main.cpp:329

*** This bug has been marked as a duplicate of bug 313688 ***
Comment 7 dariusberghe 2013-01-29 10:31:34 UTC
So the fix is to remove the package phonon-backend-gstreamer and install phonon-backend-vlc. Now it works just fine.

It would be nice for Amarok to do this at the installation stage. Well, that is if phonon-backend-vlc works for everyone as flawlessly as it works for me now.
Comment 8 Myriam Schweingruber 2013-01-29 18:56:03 UTC
(In reply to comment #7)
> So the fix is to remove the package phonon-backend-gstreamer and install
> phonon-backend-vlc. Now it works just fine.
> 
> It would be nice for Amarok to do this at the installation stage. Well, that
> is if phonon-backend-vlc works for everyone as flawlessly as it works for me
> now.

This is not a fix but a workaround, and no, this is not an option as Phonon and its backend are used by other KDE applications, it's not up to a single application to remove another one. This needs be fixed upstream in gstreamer instead.