aboutsummaryrefslogtreecommitdiffstats
path: root/libavformat/ipmovie.c
diff options
context:
space:
mode:
authorJanne Grunau <janne-libav@jannau.net>2012-01-05 21:57:22 +0100
committerJanne Grunau <janne-libav@jannau.net>2012-01-05 23:19:14 +0100
commitf5be84cfbc9c132a867ae8a8c0e0de26ed1a4e88 (patch)
tree5fca884e83c4754e7e9b45f43340bcd1a0aa101d /libavformat/ipmovie.c
parent696ace50ea91a65dff887aaf5296f42a2fbc8f6c (diff)
downloadffmpeg-f5be84cfbc9c132a867ae8a8c0e0de26ed1a4e88.tar.gz
ipmovie: do not read audio packets before the codec is known
Prevents a division by zero.
Diffstat (limited to 'libavformat/ipmovie.c')
-rw-r--r--libavformat/ipmovie.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libavformat/ipmovie.c b/libavformat/ipmovie.c
index 4bd3580bc2..bd5ec30016 100644
--- a/libavformat/ipmovie.c
+++ b/libavformat/ipmovie.c
@@ -116,6 +116,11 @@ static int load_ipmovie_packet(IPMVEContext *s, AVIOContext *pb,
int chunk_type;
if (s->audio_chunk_offset) {
+ if (s->audio_type == CODEC_ID_NONE) {
+ av_log(NULL, AV_LOG_ERROR, "Can not read audio packet before"
+ "audio codec is known\n");
+ return CHUNK_BAD;
+ }
/* adjust for PCM audio by skipping chunk header */
if (s->audio_type != CODEC_ID_INTERPLAY_DPCM) {