summaryrefslogtreecommitdiffstats
path: root/ext/dv
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 /ext/dv
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.
Diffstat (limited to 'ext/dv')
-rw-r--r--ext/dv/gstdvdemux.c7
1 files changed, 6 insertions, 1 deletions
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;