From 4d4c2a55208567c6785dc1fc162403e61c93d87a Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Wed, 14 Jun 2006 15:07:22 +0000 Subject: [PATCH] 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. --- ChangeLog | 5 +++++ ext/dv/gstdvdemux.c | 7 ++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 27da9e866a..0ac887d3da 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2006-06-14 Wim Taymans + + * ext/dv/gstdvdemux.c: (gst_dvdemux_demux_frame): + Respect segment.stop. Fixes #342592. + 2006-06-14 Tim-Philipp Müller * gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream): diff --git a/ext/dv/gstdvdemux.c b/ext/dv/gstdvdemux.c index 890e65e158..bd2c3ac3fd 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;