summaryrefslogtreecommitdiff
path: root/gst
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian@centricular.com>2015-09-23 19:37:43 +0200
committerSebastian Dröge <sebastian@centricular.com>2015-09-25 23:53:47 +0200
commitc526153ec9341183eef05da6918e7e94bcd2db29 (patch)
treeea0befd97303d18e345960e53fda1aa786b497f9 /gst
parent42d7aec41224a240f6b9646c834edad123a1b186 (diff)
downloadgstreamer-plugins-ugly-c526153ec9341183eef05da6918e7e94bcd2db29.tar.gz
asfdemux: Only push EOS event if we're not doing a segment seek
https://bugzilla.gnome.org/show_bug.cgi?id=755469
Diffstat (limited to 'gst')
-rw-r--r--gst/asfdemux/gstasfdemux.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/gst/asfdemux/gstasfdemux.c b/gst/asfdemux/gstasfdemux.c
index f1f45e5a..6c2544b6 100644
--- a/gst/asfdemux/gstasfdemux.c
+++ b/gst/asfdemux/gstasfdemux.c
@@ -1962,9 +1962,12 @@ eos:
return;
}
}
- /* normal playback, send EOS to all linked pads */
- GST_INFO_OBJECT (demux, "Sending EOS, at end of stream");
- gst_asf_demux_send_event_unlocked (demux, gst_event_new_eos ());
+
+ if (!(demux->segment.flags & GST_SEEK_FLAG_SEGMENT)) {
+ /* normal playback, send EOS to all linked pads */
+ GST_INFO_OBJECT (demux, "Sending EOS, at end of stream");
+ gst_asf_demux_send_event_unlocked (demux, gst_event_new_eos ());
+ }
/* ... and fall through to pause */
}
pause:
@@ -1980,7 +1983,9 @@ pause:
GST_ELEMENT_ERROR (demux, STREAM, FAILED,
(_("Internal data stream error.")),
("streaming stopped, reason %s", gst_flow_get_name (flow)));
+ gst_asf_demux_send_event_unlocked (demux, gst_event_new_eos ());
}
+
return;
}
@@ -1988,7 +1993,6 @@ pause:
read_failed:
{
GST_DEBUG_OBJECT (demux, "Read failed, doh");
- gst_asf_demux_send_event_unlocked (demux, gst_event_new_eos ());
flow = GST_FLOW_EOS;
goto pause;
}