diff options
author | Baptiste Coudurier <baptiste.coudurier@gmail.com> | 2008-07-31 18:02:55 +0000 |
---|---|---|
committer | Baptiste Coudurier <baptiste.coudurier@gmail.com> | 2008-07-31 18:02:55 +0000 |
commit | aaec4e03e91f3f301d5720429a5da99b44e7e1bb (patch) | |
tree | 8ceca86c6e844cffb688631bfbc0b5629272042e /libavformat/utils.c | |
parent | 23f02559fe1abfe7a27268c57c5c5f5f06b7b929 (diff) | |
download | ffmpeg-aaec4e03e91f3f301d5720429a5da99b44e7e1bb.tar.gz |
check url_fseek return value, update seek reg tests
Originally committed as revision 14489 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat/utils.c')
-rw-r--r-- | libavformat/utils.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/libavformat/utils.c b/libavformat/utils.c index 44299f9f60..d1647d2a06 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -1430,7 +1430,7 @@ static int av_seek_frame_byte(AVFormatContext *s, int stream_index, int64_t pos, static int av_seek_frame_generic(AVFormatContext *s, int stream_index, int64_t timestamp, int flags) { - int index; + int index, ret; AVStream *st; AVIndexEntry *ie; @@ -1445,11 +1445,13 @@ static int av_seek_frame_generic(AVFormatContext *s, if(st->nb_index_entries){ assert(st->index_entries); ie= &st->index_entries[st->nb_index_entries-1]; - url_fseek(s->pb, ie->pos, SEEK_SET); + if ((ret = url_fseek(s->pb, ie->pos, SEEK_SET)) < 0) + return ret; av_update_cur_dts(s, st, ie->timestamp); - }else - url_fseek(s->pb, 0, SEEK_SET); - + }else{ + if ((ret = url_fseek(s->pb, 0, SEEK_SET)) < 0) + return ret; + } for(i=0;; i++) { int ret = av_read_frame(s, &pkt); if(ret<0) @@ -1471,8 +1473,8 @@ static int av_seek_frame_generic(AVFormatContext *s, return 0; } ie = &st->index_entries[index]; - url_fseek(s->pb, ie->pos, SEEK_SET); - + if ((ret = url_fseek(s->pb, ie->pos, SEEK_SET)) < 0) + return ret; av_update_cur_dts(s, st, ie->timestamp); return 0; |