tagdemux: fix erroring out if we reach EOS without detecting type

In 0.10 the source pad was a dynamic pad that was only added once
the type had been detected, but in 1.x it's an always source pad,
so checking whether it's still NULL won't work to detect if the
type has been detected.

Makes tagdemux error out when we get EOS but haven't managed to
identify the format of the data after the tag.

https://bugzilla.gnome.org//show_bug.cgi?id=768178
This commit is contained in:
Tim-Philipp Müller 2016-06-30 17:30:34 +01:00
parent 4b6e43fa5b
commit 130e78dbd8

View file

@ -764,8 +764,7 @@ gst_tag_demux_sink_event (GstPad * pad, GstObject * parent, GstEvent * event)
switch (GST_EVENT_TYPE (event)) {
case GST_EVENT_EOS:
/* FIXME, detect this differently */
if (demux->priv->srcpad == NULL) {
if (!gst_pad_has_current_caps (demux->priv->srcpad)) {
GST_WARNING_OBJECT (demux, "EOS before we found a type");
GST_ELEMENT_ERROR (demux, STREAM, TYPE_NOT_FOUND, (NULL), (NULL));
}