Skip to content

avidemux: Don't increment stream count when stream is skipped due to parse failure

Fixes an assertion (or crash for release builds) which occurs for certain avi files: gst_flow_combiner_update_pad_flow: assertion 'pad != NULL' failed

The following warnings occur before the assertion/crash:

[../gst-plugins-good-1.18.3/gst/avi/gstavidemux.c:2294 (gst_avi_demux_parse_stream)] GObject Type: GstAviDemux: Failed to find strf chunk
[../gst-plugins-good-1.18.3/gst/avi/gstavidemux.c:4087 (gst_avi_demux_stream_header_pull)] GObject Type: GstAviDemux: warning: failed to parse stream, ignoring
[../gst-plugins-good-1.18.3/gst/avi/gstavidemux.c:4171 (gst_avi_demux_stream_header_pull)] GObject Type: GstAviDemux: Stream header mentioned 1 streams, but 2 available
[../gst-plugins-good-1.18.3/gst/avi/gstavidemux.c:1912 (gst_avi_demux_expose_streams)] GObject Type: GstAviDemux: Stream #1 doesn't have any entry, removing it

This is the same issue as is described here: https://bugzilla.gnome.org/show_bug.cgi?id=756413

Seems like the stream count shouldn't be incremented in the failure case as the stream is being skipped? This does resolve the issue in my case

Merge request reports