summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@gmail.com>2006-06-14 15:07:22 +0000
committerWim Taymans <wim.taymans@gmail.com>2006-06-14 15:07:22 +0000
commit4d4c2a55208567c6785dc1fc162403e61c93d87a (patch)
tree460d49173f61a78a7df6cb81e74ba7eca93c97e6
parent40131326b34f2075b35a4e6ccc0af139cd5080f7 (diff)
ext/dv/gstdvdemux.c: Respect segment.stop. Fixes #342592.
Original commit message from CVS: * ext/dv/gstdvdemux.c: (gst_dvdemux_demux_frame): Respect segment.stop. Fixes #342592.
-rw-r--r--ChangeLog5
-rw-r--r--ext/dv/gstdvdemux.c7
2 files changed, 11 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 27da9e86..0ac887d3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2006-06-14 Wim Taymans <wim@fluendo.com>
+
+ * ext/dv/gstdvdemux.c: (gst_dvdemux_demux_frame):
+ Respect segment.stop. Fixes #342592.
+
2006-06-14 Tim-Philipp Müller <tim at centricular dot net>
* gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream):
diff --git a/ext/dv/gstdvdemux.c b/ext/dv/gstdvdemux.c
index 890e65e1..bd2c3ac3 100644
--- a/ext/dv/gstdvdemux.c
+++ b/ext/dv/gstdvdemux.c
@@ -1397,10 +1397,15 @@ gst_dvdemux_demux_frame (GstDVDemux * dvdemux, GstBuffer * buffer)
goto done;
}
- ret = GST_FLOW_OK;
gst_segment_set_last_stop (&dvdemux->time_segment, GST_FORMAT_TIME, next_ts);
dvdemux->frame_offset++;
+ /* check for the end of the segment */
+ if (dvdemux->time_segment.stop != -1 && next_ts > dvdemux->time_segment.stop)
+ ret = GST_FLOW_UNEXPECTED;
+ else
+ ret = GST_FLOW_OK;
+
done:
return ret;