summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Storsjö <martin@martin.st>2011-03-21 00:23:54 +0200
committerMartin Storsjö <martin@martin.st>2011-04-04 13:01:59 +0300
commit0d8a33b11e605f7fb6b51640d438d41fec08db1c (patch)
tree757ebfe49c43fa69a71e5d7534a14f151582edb6
parent6cc7f1398257d4ffa89f79d52f10b2cabd9ad232 (diff)
applehttp: Merge two for loops
The previous commit didn't do this straight away, to keep the diff slightly simpler.
-rw-r--r--libavformat/applehttp.c17
1 files changed, 7 insertions, 10 deletions
diff --git a/libavformat/applehttp.c b/libavformat/applehttp.c
index 7ab3ab7372..93f928ac8b 100644
--- a/libavformat/applehttp.c
+++ b/libavformat/applehttp.c
@@ -506,9 +506,15 @@ static int applehttp_read_seek(AVFormatContext *s, int stream_index,
if ((flags & AVSEEK_FLAG_BYTE) || !c->variants[0]->finished)
return AVERROR(ENOSYS);
- /* Reset the variants */
+ timestamp = av_rescale_rnd(timestamp, 1, stream_index >= 0 ?
+ s->streams[stream_index]->time_base.den :
+ AV_TIME_BASE, flags & AVSEEK_FLAG_BACKWARD ?
+ AV_ROUND_DOWN : AV_ROUND_UP);
+ ret = AVERROR(EIO);
for (i = 0; i < c->n_variants; i++) {
+ /* Reset reading */
struct variant *var = c->variants[i];
+ int64_t pos = 0;
if (var->input) {
url_close(var->input);
var->input = NULL;
@@ -516,16 +522,7 @@ static int applehttp_read_seek(AVFormatContext *s, int stream_index,
av_free_packet(&var->pkt);
reset_packet(&var->pkt);
var->pb.eof_reached = 0;
- }
- timestamp = av_rescale_rnd(timestamp, 1, stream_index >= 0 ?
- s->streams[stream_index]->time_base.den :
- AV_TIME_BASE, flags & AVSEEK_FLAG_BACKWARD ?
- AV_ROUND_DOWN : AV_ROUND_UP);
- ret = AVERROR(EIO);
- for (i = 0; i < c->n_variants; i++) {
- struct variant *var = c->variants[i];
- int64_t pos = 0;
/* Locate the segment that contains the target timestamp */
for (j = 0; j < var->n_segments; j++) {
if (timestamp >= pos &&