summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/ogg/gstoggdemux.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/ext/ogg/gstoggdemux.c b/ext/ogg/gstoggdemux.c
index 6716c1599..cb1f2dd94 100644
--- a/ext/ogg/gstoggdemux.c
+++ b/ext/ogg/gstoggdemux.c
@@ -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,