After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 675609 - oggdemux: Amarok crashes when seeking in a Jamendo or Magnatune stream
oggdemux: Amarok crashes when seeking in a Jamendo or Magnatune stream
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
0.10.x
Other Linux
: Normal critical
: 0.10.37
Assigned To: GStreamer Maintainers
GStreamer Maintainers
: 692424 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2012-05-07 12:51 UTC by EM
Modified: 2013-08-16 14:11 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description EM 2012-05-07 12:51:38 UTC
You can find the original bug report here: https://bugs.kde.org/show_bug.cgi?id=299440

While listening to a Jamendo o Magnatune song directly from Internet, if you seek to a different position of a song, Amarok crashes.

Reproducible: Always

Steps to Reproduce:
1. Search for an album in the Jamendo or Magnatune service and play any song.
2. Seek to the middle of a song. Amarok will crash

I'm using Amarok 2.5-git, phonon-gstreamer 4.6 and KDE 4.8.2. Gstreamer version is 0.10.x

You can find a backtrace here: https://bugs.kde.org/show_bug.cgi?id=299440#c2
Comment 1 Tim-Philipp Müller 2012-05-13 16:48:18 UTC
Looks like it crashed in oggdemux:

Thread 1 (Thread 0xaf6b3960 (LWP 4640))

  • #7 gst_ogg_pad_src_query
    at gstoggdemux.c line 336
  • #8 gst_pad_query
    at gstpad.c line 3766
  • #9 gst_multi_queue_src_query
    at gstmultiqueue.c line 1627
  • #10 gst_pad_query
    at gstpad.c line 3766
  • #11 gst_pad_dispatcher
    at gstpad.c line 3706
  • #12 gst_pad_query_default
    at gstpad.c line 3850
  • #13 gst_audio_decoder_src_query
    at gstaudiodecoder.c line 1966
  • #14 gst_pad_query
    at gstpad.c line 3766
  • #15 gst_proxy_pad_query_default
    at gstghostpad.c line 161
  • #16 gst_pad_query
    at gstpad.c line 3766
  • #17 gst_proxy_pad_query_default
    at gstghostpad.c line 161
  • #18 gst_pad_query
    at gstpad.c line 3766
  • #19 gst_pad_peer_query
    at gstpad.c line 3810
  • #20 gst_input_selector_query
    at gstinputselector.c line 1436
  • #21 gst_pad_query
    at gstpad.c line 3766
  • #22 gst_proxy_pad_query_default
    at gstghostpad.c line 161
  • #23 gst_pad_query
    at gstpad.c line 3766
  • #24 gst_pad_dispatcher
    at gstpad.c line 3706
  • #25 gst_pad_query_default
    at gstpad.c line 3850
  • #26 gst_pad_query
    at gstpad.c line 3766
  • #27 gst_pad_peer_query
    at gstpad.c line 3810
  • #28 gst_stream_synchronizer_query
    at gststreamsynchronizer.c line 152
  • #29 gst_pad_query
    at gstpad.c line 3766
  • #30 gst_proxy_pad_query_default
    at gstghostpad.c line 161
  • #31 gst_pad_query
    at gstpad.c line 3766
  • #32 gst_queue_handle_src_query
    at gstqueue.c line 1334
  • #33 gst_pad_query
    at gstpad.c line 3766
  • #34 gst_proxy_pad_query_default
    at gstghostpad.c line 161
  • #35 gst_pad_query
    at gstpad.c line 3766
  • #36 gst_pad_peer_query
    at gstpad.c line 3810
  • #37 gst_base_transform_default_query
    at gstbasetransform.c line 1351
  • #38 gst_base_transform_query
    at gstbasetransform.c line 1372
  • #39 gst_pad_query
    at gstpad.c line 3766
  • #40 gst_pad_dispatcher
    at gstpad.c line 3706
  • #41 gst_pad_query_default
    at gstpad.c line 3850
  • #42 gst_audio_resample_query
    at gstaudioresample.c line 1322
  • #43 gst_pad_query
    at gstpad.c line 3766
  • #44 gst_proxy_pad_query_default
    at gstghostpad.c line 161
  • #45 gst_pad_query
    at gstpad.c line 3766
  • #46 gst_proxy_pad_query_default
    at gstghostpad.c line 161
  • #47 gst_pad_query
    at gstpad.c line 3766
  • #48 gst_queue_handle_src_query
    at gstqueue.c line 1334
  • #49 gst_pad_query
    at gstpad.c line 3766
  • #50 gst_pad_dispatcher
    at gstpad.c line 3706
  • #51 gst_pad_query_default
    at gstpad.c line 3850
  • #52 gst_pad_query
    at gstpad.c line 3766
  • #53 gst_proxy_pad_query_default
    at gstghostpad.c line 161
  • #54 gst_pad_query
    at gstpad.c line 3766
  • #55 gst_queue_handle_src_query
    at gstqueue.c line 1334
  • #56 gst_pad_query
    at gstpad.c line 3766
  • #57 gst_pad_peer_query
    at gstpad.c line 3810
  • #58 gst_base_transform_default_query
    at gstbasetransform.c line 1351
  • #59 gst_base_transform_query
    at gstbasetransform.c line 1372
  • #60 gst_pad_query
    at gstpad.c line 3766
  • #61 gst_pad_peer_query
    at gstpad.c line 3810
  • #62 gst_base_transform_default_query
    at gstbasetransform.c line 1351
  • #63 gst_base_transform_query
    at gstbasetransform.c line 1372
  • #64 gst_pad_query
    at gstpad.c line 3766
  • #65 gst_proxy_pad_query_default
    at gstghostpad.c line 161
  • #66 gst_pad_query
    at gstpad.c line 3766
  • #67 gst_pad_dispatcher
    at gstpad.c line 3706
  • #68 gst_pad_query_default
    at gstpad.c line 3850
  • #69 gst_pad_query
    at gstpad.c line 3766
  • #70 gst_proxy_pad_query_default
    at gstghostpad.c line 161
  • #71 gst_pad_query
    at gstpad.c line 3766
  • #72 gst_queue_handle_src_query
    at gstqueue.c line 1334
  • #73 gst_pad_query
    at gstpad.c line 3766
  • #74 gst_pad_peer_query
    at gstpad.c line 3810
  • #75 gst_base_transform_default_query
    at gstbasetransform.c line 1351
  • #76 gst_base_transform_query
    at gstbasetransform.c line 1372
  • #77 gst_pad_query
    at gstpad.c line 3766
  • #78 gst_pad_dispatcher
    at gstpad.c line 3706
  • #79 gst_pad_query_default
    at gstpad.c line 3850
  • #80 gst_audio_resample_query
    at gstaudioresample.c line 1322
  • #81 gst_pad_query
    at gstpad.c line 3766
  • #82 gst_pad_peer_query
    at gstpad.c line 3810
  • #83 gst_base_transform_default_query
    at gstbasetransform.c line 1351
  • #84 gst_base_transform_query
    at gstbasetransform.c line 1372
  • #85 gst_pad_query
    at gstpad.c line 3766
  • #86 gst_pad_peer_query
    at gstpad.c line 3810
  • #87 default_element_query
    at gstbasesink.c line 4943
  • #88 gst_base_audio_sink_query
    at gstbaseaudiosink.c line 538
  • #89 gst_element_query
    at gstelement.c line 1812
  • #90 bin_query_generic_fold
    at gstbin.c line 3593
  • #91 gst_iterator_fold
    at gstiterator.c line 549
  • #92 gst_bin_query
    at gstbin.c line 3693
  • #93 gst_element_query
    at gstelement.c line 1812
  • #94 bin_query_generic_fold
    at gstbin.c line 3593
  • #95 gst_iterator_fold
    at gstiterator.c line 549
  • #96 gst_bin_query
    at gstbin.c line 3693
  • #97 gst_element_query
    at gstelement.c line 1812
  • #98 bin_query_generic_fold
    at gstbin.c line 3593
  • #99 gst_iterator_fold
    at gstiterator.c line 549
  • #100 gst_bin_query
    at gstbin.c line 3693
  • #101 gst_element_query
    at gstelement.c line 1812
  • #102 bin_query_generic_fold
    at gstbin.c line 3593
  • #103 gst_iterator_fold
    at gstiterator.c line 549
  • #104 gst_bin_query
    at gstbin.c line 3693
  • #105 gst_element_query
    at gstelement.c line 1812
  • #106 bin_query_generic_fold
    at gstbin.c line 3593
  • #107 gst_iterator_fold
    at gstiterator.c line 549
  • #108 gst_bin_query
    at gstbin.c line 3693
  • #109 gst_play_bin_query
    at gstplaybin2.c line 2240
  • #110 gst_element_query
    at gstelement.c line 1812
  • #111 Phonon::Gstreamer::Pipeline::isSeekable
    at /usr/src/debug/phonon-backend-gstreamer-4.6.0/gstreamer/pipeline.cpp line 749


What is your version of gst-plugins-base / oggdemux ? (See gst-inspect-0.10 oggdemux | grep Version)
Comment 2 EM 2012-05-13 21:44:10 UTC
0.10.36
Comment 3 Tim-Philipp Müller 2012-05-13 22:21:27 UTC
Hoping this fixes it:

 commit 187242672c9eb4f228051a8e2c157781ccc10ae9
 Author: Tim-Philipp Müller <tim.muller@collabora.co.uk>
 Date:   Sun May 13 23:11:20 2012 +0100

    oggdemux: fix potential crash in SEEKING query handler
    
    Take chain lock when accessing chains. Fall back gracefully
    when there's no current chain Hopefully fixes crash when
    seeking in Jamendo or Magnatune streams in Amarok.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=675609

Please re-open if not.

(I understand why it crashes, but not entirely why it gets into that state, so not 100% sure that's what's going on here, I didn't try to reproduce with Amarok so far.)
Comment 4 Tim-Philipp Müller 2013-08-16 14:11:48 UTC
*** Bug 692424 has been marked as a duplicate of this bug. ***