mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-25 11:11:08 +00:00
oggdemux: Don't reset the pad when pushing resulted in NOT_LINKED
The pad might be linked later and after resetting it it will only work after resetting all of oggdemux.
This commit is contained in:
parent
c591b98864
commit
6357bdef63
1 changed files with 13 additions and 1 deletions
|
@ -992,7 +992,9 @@ gst_ogg_pad_stream_out (GstOggPad * pad, gint npackets)
|
||||||
case 1:
|
case 1:
|
||||||
GST_LOG_OBJECT (ogg, "packetout gave packet of size %ld", packet.bytes);
|
GST_LOG_OBJECT (ogg, "packetout gave packet of size %ld", packet.bytes);
|
||||||
result = gst_ogg_pad_submit_packet (pad, &packet);
|
result = gst_ogg_pad_submit_packet (pad, &packet);
|
||||||
if (result != GST_FLOW_OK)
|
if (result == GST_FLOW_NOT_LINKED)
|
||||||
|
goto not_linked;
|
||||||
|
else if (result <= GST_FLOW_UNEXPECTED)
|
||||||
goto could_not_submit;
|
goto could_not_submit;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
@ -1010,6 +1012,16 @@ gst_ogg_pad_stream_out (GstOggPad * pad, gint npackets)
|
||||||
return result;
|
return result;
|
||||||
|
|
||||||
/* ERRORS */
|
/* ERRORS */
|
||||||
|
not_linked:
|
||||||
|
{
|
||||||
|
GST_WARNING_OBJECT (ogg,
|
||||||
|
"could not submit packet for stream %08lx, error: %d",
|
||||||
|
pad->map.serialno, result);
|
||||||
|
/* Not resetting the pad here because it might be linked
|
||||||
|
* later and should work without problems then.
|
||||||
|
*/
|
||||||
|
return result;
|
||||||
|
}
|
||||||
could_not_submit:
|
could_not_submit:
|
||||||
{
|
{
|
||||||
GST_WARNING_OBJECT (ogg,
|
GST_WARNING_OBJECT (ogg,
|
||||||
|
|
Loading…
Reference in a new issue