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:
|
||||
GST_LOG_OBJECT (ogg, "packetout gave packet of size %ld", packet.bytes);
|
||||
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;
|
||||
break;
|
||||
default:
|
||||
|
@ -1010,6 +1012,16 @@ gst_ogg_pad_stream_out (GstOggPad * pad, gint npackets)
|
|||
return result;
|
||||
|
||||
/* 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:
|
||||
{
|
||||
GST_WARNING_OBJECT (ogg,
|
||||
|
|
Loading…
Reference in a new issue