[FFmpeg-cvslog] ff_gen_search: fix limit
Michael Niedermayer
git at videolan.org
Tue Jun 18 22:59:21 CEST 2013
ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Tue Jun 18 20:48:53 2013 +0200| [b3dd50cd0dbbda08610b75384128f5f47f5199d9] | committer: Michael Niedermayer
ff_gen_search: fix limit
The limit value could become slightly wrong in the last iteration
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b3dd50cd0dbbda08610b75384128f5f47f5199d9
---
libavformat/utils.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/libavformat/utils.c b/libavformat/utils.c
index 9d9d3d6..686374d 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -1770,11 +1770,13 @@ int64_t ff_gen_search(AVFormatContext *s, int stream_index, int64_t target_ts,
if(ts_max == AV_NOPTS_VALUE){
int64_t step= 1024;
+ int64_t limit;
filesize = avio_size(s->pb);
pos_max = filesize - 1;
do{
+ limit = pos_max;
pos_max = FFMAX(0, pos_max - step);
- ts_max = ff_read_timestamp(s, stream_index, &pos_max, pos_max + step, read_timestamp);
+ ts_max = ff_read_timestamp(s, stream_index, &pos_max, limit, read_timestamp);
step += step;
}while(ts_max == AV_NOPTS_VALUE && pos_max > 0);
if (ts_max == AV_NOPTS_VALUE)
More information about the ffmpeg-cvslog
mailing list