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 134851 - Vorbisfile query crash on ogg -> mp3
Vorbisfile query crash on ogg -> mp3
Status: RESOLVED NOTABUG
Product: GStreamer
Classification: Platform
Component: gst-plugins
0.6.4
Other Linux
: Normal major
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2004-02-19 15:54 UTC by gertvv
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: 2.3/2.4



Description gertvv 2004-02-19 15:54:05 UTC
Overview Description:
gst_element_query makes vorbisfile crash when switching from .ogg file to .mp3



Steps to Reproduce: 

1) I have the following pipeline (a GstThread):
   gnomevfssrc ! spider ! artsdsink
2) playback a vorbis file
3) change to a mp3 file (NULL, set "location", PLAYING)
4) query the sink element (making sure that the thread is in
GST_STATE_PLAYING again)



Actual Results: 

The application crashes (segfault), from vorbisfile_get_type() (???)
Backtrace below.



Expected Results: 

More gracefull handling in vorbisfile (just returning FALSE from the
gst_element_query function). Maybe even not going into vorbisfile at all??



Additional Information:

It also crashes when switching from ogg -> ogg, but there is already a
report on that.



Backtrace:
 
Program received signal SIGSEGV, Segmentation fault.

Thread 16384 (LWP 2232)

  • #0 vorbisfile_get_type
    from /usr/lib/gstreamer-0.6/libgstvorbis.so
  • #1 gst_pad_query
    from /usr/lib/libgstreamer-0.6.so.0
  • #2 gst_pad_convert
    from /usr/lib/libgstreamer-0.6.so.0
  • #3 gst_pad_dispatcher
    from /usr/lib/libgstreamer-0.6.so.0
  • #4 gst_pad_query_default
    from /usr/lib/libgstreamer-0.6.so.0
  • #5 gst_pad_query
    from /usr/lib/libgstreamer-0.6.so.0
  • #6 gst_element_query
    from /usr/lib/libgstreamer-0.6.so.0
  • #7 player_timeout_func
  • #8 g_main_context_wakeup
    from /usr/lib/libglib-2.0.so.0
  • #9 unblock_source
    from /usr/lib/libglib-2.0.so.0
  • #10 g_main_context_dispatch
    from /usr/lib/libglib-2.0.so.0
  • #11 g_main_context_dispatch
    from /usr/lib/libglib-2.0.so.0
  • #12 g_main_loop_run
    from /usr/lib/libglib-2.0.so.0
  • #13 gtk_main
    from /usr/lib/libgtk-x11-2.0.so.0
  • #14 ??
  • #15 ??
    from /lib/ld-linux.so.2
  • #16 ??
  • #17 ??
  • #18 ??

player_timeout_func is a function to periodically update a progress bar.
Comment 1 Thomas Vander Stichele 2004-02-24 15:50:47 UTC
spider isn't reusable.  put in a new spider instead.