summaryrefslogtreecommitdiff
path: root/libavformat/ipmovie.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-01-08 18:37:19 +0100
committerMichael Niedermayer <michaelni@gmx.at>2012-01-08 20:26:39 +0100
commit52ef95474ba1615fe261b001c07b107449866368 (patch)
tree4c08dc9367697e7c2e530e39b712964efed8caca /libavformat/ipmovie.c
parentdd319f17e6486b751e23a144d017b070691b6131 (diff)
ipmovie: Fix passing resolution changes on.
Fixes Ticket676 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat/ipmovie.c')
-rw-r--r--libavformat/ipmovie.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libavformat/ipmovie.c b/libavformat/ipmovie.c
index bf9e5c0dcf..4e5f1164e5 100644
--- a/libavformat/ipmovie.c
+++ b/libavformat/ipmovie.c
@@ -624,6 +624,7 @@ static int ipmovie_read_packet(AVFormatContext *s,
AVIOContext *pb = s->pb;
int ret;
+ for (;;) {
ret = process_ipmovie_chunk(ipmovie, pb, pkt);
if (ret == CHUNK_BAD)
ret = AVERROR_INVALIDDATA;
@@ -633,10 +634,13 @@ static int ipmovie_read_packet(AVFormatContext *s,
ret = AVERROR(ENOMEM);
else if (ret == CHUNK_VIDEO)
ret = 0;
+ else if (ret == CHUNK_INIT_VIDEO || ret == CHUNK_INIT_AUDIO)
+ continue;
else
ret = -1;
return ret;
+ }
}
AVInputFormat ff_ipmovie_demuxer = {