mxfdemux: fix push mode unit test failure
authorTim-Philipp Müller <tim@centricular.net>
Mon, 11 Feb 2013 19:53:39 +0000 (19:53 +0000)
committerTim-Philipp Müller <tim@centricular.net>
Mon, 11 Feb 2013 19:59:20 +0000 (19:59 +0000)
In the sink event handler we end up sending multiple EOS
events per pad. Don't return FALSE when sending the
second EOS on an already-EOS pad fails. Not sure if there
was a reason for sending a second EOS, so leaving the
code in there for now, but assume all went fine if there
are source pads, which is slightly less wrong than before.
This function needs work.

gst/mxf/mxfdemux.c

index 04e8a48e69055667cc5bccaf10404fc2b27faa53..0a9bb64095c01040c8afc93c92637f1c67a20f96 100644 (file)
@@ -3760,8 +3760,9 @@ gst_mxf_demux_sink_event (GstPad * pad, GstObject * parent, GstEvent * event)
         }
       }
 
-      if (!(ret = gst_pad_event_default (pad, parent, event)))
-        GST_WARNING_OBJECT (pad, "failed pushing EOS on streams");
+      /* and one more time for good measure apparently? */
+      gst_pad_event_default (pad, parent, event);
+      ret = (demux->src->len > 0);
       break;
     }
     case GST_EVENT_SEGMENT:{