flvdemux: Do not error out if the first added and chained pad is not linked

And let it the oportunity to get its other pad linked

Example:

```
$ gst-launch-1.0 uridecodebin uri=file:///home/thiblahute/gst-validate.save/gst-integration-testsuites/testsuites/../medias/defaults/flv/819290236.flv caps=audio/x-raw expose-all-streams=FALSE ! fakesink
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
ERROR: from element /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstFlvDemux:flvdemux0: Internal data stream error.
Additional debug info:
../subprojects/gst-plugins-good/gst/flv/gstflvdemux.c(2760): gst_flv_demux_loop (): /GstPipeline:pipeline0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstFlvDemux:flvdemux0:
streaming stopped, reason not-linked (-1)
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...
```
This commit is contained in:
Thibault Saunier 2019-01-26 10:35:31 -03:00 committed by Nicolas Dufresne
parent 818428ce9c
commit bc8af2cca5

View file

@ -2687,7 +2687,8 @@ gst_flv_demux_loop (GstPad * pad)
}
/* pause if something went wrong or at end */
if (G_UNLIKELY (ret != GST_FLOW_OK))
if (G_UNLIKELY (ret != GST_FLOW_OK) && !(ret == GST_FLOW_NOT_LINKED
&& !demux->no_more_pads))
goto pause;
gst_object_unref (demux);