Browse Source

check url_fseek return value, update seek reg tests

Originally committed as revision 14489 to svn://svn.ffmpeg.org/ffmpeg/trunk
tags/v0.5
Baptiste Coudurier 17 years ago
parent
commit
aaec4e03e9
1 changed files with 9 additions and 7 deletions
  1. +9
    -7
      libavformat/utils.c

+ 9
- 7
libavformat/utils.c View File

@@ -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;


Loading…
Cancel
Save