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 607652 - segfault with an ogg annodex file
segfault with an ogg annodex file
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Linux
: Normal major
: 0.10.26
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2010-01-21 12:33 UTC by Edward Hervey
Modified: 2010-01-21 17:26 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Edward Hervey 2010-01-21 12:33:38 UTC
The following file causes a segfault on playback http://people.collabora.co.uk/~edward/index.anx

  • #0 ??
  • #0 ??
  • #1 gst_ogg_stream_setup_map
    at gstoggstream.c line 1281
  • #2 gst_ogg_pad_submit_packet
    at gstoggdemux.c line 685
  • #3 gst_ogg_pad_stream_out
    at gstoggdemux.c line 843
  • #4 gst_ogg_pad_submit_page
    at gstoggdemux.c line 915
  • #5 gst_ogg_demux_read_chain
    at gstoggdemux.c line 2339
  • #6 gst_ogg_demux_find_chains
    at gstoggdemux.c line 2643
  • #7 gst_ogg_demux_loop
    at gstoggdemux.c line 3041
  • #8 gst_task_func
    at gsttask.c line 238
  • #9 g_thread_pool_thread_proxy
    at gthreadpool.c line 265
  • #10 g_thread_create_proxy
    at gthread.c line 635
  • #11 start_thread
    at pthread_create.c line 297
  • #12 clone
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S line 112
  • #13 ??

Comment 1 Sebastian Dröge (slomo) 2010-01-21 13:14:01 UTC
Apparently because the Annodex mapper is non-existing, especially it has no setup function:
[...]
  {
    "AnxData", 7, 0,
    "application/octet-stream",
    NULL,
    NULL,
    NULL,
    NULL,
    NULL,
  },
[...]
Comment 2 Wim Taymans 2010-01-21 17:26:49 UTC
commit 4b9666aedba73321889a1850127a41a14633fcab
Author: Wim Taymans <wim.taymans@collabora.co.uk>
Date:   Thu Jan 21 17:32:33 2010 +0100

    oggdemux: keep track of added pads
    
    Keep track of the pads we added and removed.
    Remove some unused fields.
    Don't add pads for which we don't have caps.

commit 06e2d2791b7a6e835e1e40d29d1e74cd571567ed
Author: Wim Taymans <wim.taymans@collabora.co.uk>
Date:   Thu Jan 21 17:31:13 2010 +0100

    oggstream: don't call NULL setup functions
    
    If we find a known mapper but it doesn't have a setup function, simply skip it
    instead of crashing.

commit 4ed58b58826a99def290133533837928cd2b41c2
Author: Wim Taymans <wim.taymans@collabora.co.uk>
Date:   Thu Jan 21 17:30:15 2010 +0100

    oggstream: avoid division by 0 on bad annodex streams