GNOME Bugzilla – Bug 546859
Asfdemux doesn't properly error out on not-linked
Last modified: 2008-11-19 11:07:56 UTC
asfdemux doesn't aggregate flow returns (but special cases NOT_LINKED in one spot to just ignore it). Further, when shutting down due to any error, it doesn't post an error message, so the pipeline doesn't get stopped. Attached patch fixes both of these, now filesrc ! decodebin ! fakesink with no decoder installed for the file properly errors out.
Created attachment 116093 [details] [review] Implement flow aggregation and error posting
Created attachment 116095 [details] [review] Fix up EOS cases The previous version didn't EOS correctly. This one does.
Created attachment 116097 [details] [review] No really, this time it works This one I've actually tested...
2008-08-11 Michael Smith <msmith@songbirdnest.com> * gst/asfdemux/gstasfdemux.c: Properly aggregate flow returns for both push and pull mode, so we shut down if all pads are unlinked. Fixes #546859.
That patch is wrong. When using aggregated GST_FLOW_RETURN, you should only post an error, when the aggregation is (GST_FLOW_IS_FATAL (flow) || flow == GST_FLOW_NOT_LINKED)
Created attachment 117510 [details] [review] Fix for the already committed code.
2008-08-28 Edward Hervey <edward.hervey@collabora.co.uk> * gst/asfdemux/gstasfdemux.c: (gst_asf_demux_loop): Fix aggregated GST_FLOW_RETURN check for when to send an error message on the bus. Re-fixes #546859
*** Bug 561118 has been marked as a duplicate of this bug. ***