Mercurial > libavformat.hg
comparison raw.c @ 3613:e961e9aa3767 libavformat
check url_fseek return value
author | bcoudurier |
---|---|
date | Thu, 31 Jul 2008 18:12:37 +0000 |
parents | 68e5f9adb0f4 |
children | 900a232fc55e |
comparison
equal
deleted
inserted
replaced
3612:c6186d4ceda0 | 3613:e961e9aa3767 |
---|---|
219 | 219 |
220 int pcm_read_seek(AVFormatContext *s, | 220 int pcm_read_seek(AVFormatContext *s, |
221 int stream_index, int64_t timestamp, int flags) | 221 int stream_index, int64_t timestamp, int flags) |
222 { | 222 { |
223 AVStream *st; | 223 AVStream *st; |
224 int block_align, byte_rate; | 224 int block_align, byte_rate, ret; |
225 int64_t pos; | 225 int64_t pos; |
226 | 226 |
227 st = s->streams[0]; | 227 st = s->streams[0]; |
228 | 228 |
229 block_align = st->codec->block_align ? st->codec->block_align : | 229 block_align = st->codec->block_align ? st->codec->block_align : |
241 (flags & AVSEEK_FLAG_BACKWARD) ? AV_ROUND_DOWN : AV_ROUND_UP); | 241 (flags & AVSEEK_FLAG_BACKWARD) ? AV_ROUND_DOWN : AV_ROUND_UP); |
242 pos *= block_align; | 242 pos *= block_align; |
243 | 243 |
244 /* recompute exact position */ | 244 /* recompute exact position */ |
245 st->cur_dts = av_rescale(pos, st->time_base.den, byte_rate * (int64_t)st->time_base.num); | 245 st->cur_dts = av_rescale(pos, st->time_base.den, byte_rate * (int64_t)st->time_base.num); |
246 url_fseek(s->pb, pos + s->data_offset, SEEK_SET); | 246 if ((ret = url_fseek(s->pb, pos + s->data_offset, SEEK_SET)) < 0) |
247 return ret; | |
247 return 0; | 248 return 0; |
248 } | 249 } |
249 | 250 |
250 static int audio_read_header(AVFormatContext *s, | 251 static int audio_read_header(AVFormatContext *s, |
251 AVFormatParameters *ap) | 252 AVFormatParameters *ap) |