summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@gmail.com>2008-06-02 15:44:57 +0000
committerWim Taymans <wim.taymans@gmail.com>2008-06-02 15:44:57 +0000
commite29dfee55c336e9e698732a71517db45d6d48992 (patch)
treee5c9cd8766fcb9f6737d294a2af5262d60e123c9
parent8a0500bf3b82aa69dcd4a85f82bc41cf26970e13 (diff)
downloadgstreamer-plugins-ugly-e29dfee55c336e9e698732a71517db45d6d48992.tar.gz
ext/a52dec/gsta52dec.c: Drain queued buffers before forwarding the segment event.
Original commit message from CVS: * ext/a52dec/gsta52dec.c: (gst_a52dec_sink_event): Drain queued buffers before forwarding the segment event.
-rw-r--r--ChangeLog5
-rw-r--r--ext/a52dec/gsta52dec.c7
2 files changed, 9 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 1939878f..3b3eb54e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2008-06-02 Wim Taymans <wim.taymans@collabora.co.uk>
+ * ext/a52dec/gsta52dec.c: (gst_a52dec_sink_event):
+ Drain queued buffers before forwarding the segment event.
+
+2008-06-02 Wim Taymans <wim.taymans@collabora.co.uk>
+
* ext/a52dec/gsta52dec.c: (clear_queued), (flush_queued),
(gst_a52dec_drain), (gst_a52dec_push), (gst_a52dec_sink_event),
(gst_a52dec_chain), (gst_a52dec_change_state):
diff --git a/ext/a52dec/gsta52dec.c b/ext/a52dec/gsta52dec.c
index 6409d27b..a942b4bc 100644
--- a/ext/a52dec/gsta52dec.c
+++ b/ext/a52dec/gsta52dec.c
@@ -492,6 +492,10 @@ gst_a52dec_sink_event (GstPad * pad, GstEvent * event)
gst_event_parse_new_segment (event, &update, &rate, &fmt, &start, &end,
&pos);
+ /* drain queued buffers before activating the segment so that we can clip
+ * against the old segment first */
+ gst_a52dec_drain (a52dec);
+
if (fmt != GST_FORMAT_TIME || !GST_CLOCK_TIME_IS_VALID (start)) {
GST_WARNING ("No time in newsegment event %p (format is %s)",
event, gst_format_get_name (fmt));
@@ -503,9 +507,6 @@ gst_a52dec_sink_event (GstPad * pad, GstEvent * event)
a52dec->sent_segment = TRUE;
ret = gst_pad_push_event (a52dec->srcpad, event);
}
- /* drain queued buffers before activating the segment so that we can clip
- * against the old segment first */
- gst_a52dec_drain (a52dec);
gst_segment_set_newsegment (&a52dec->segment, update, rate, fmt, start,
end, pos);