ipmovie: do not read audio packets before the codec is known
authorJanne Grunau <janne-libav@jannau.net>
Thu, 5 Jan 2012 20:57:22 +0000 (21:57 +0100)
committerJanne Grunau <janne-libav@jannau.net>
Thu, 5 Jan 2012 22:19:14 +0000 (23:19 +0100)
Prevents a division by zero.

libavformat/ipmovie.c

index 4bd3580..bd5ec30 100644 (file)
@@ -116,6 +116,11 @@ static int load_ipmovie_packet(IPMVEContext *s, AVIOContext *pb,
     int chunk_type;
 
     if (s->audio_chunk_offset) {
     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) {
 
         /* adjust for PCM audio by skipping chunk header */
         if (s->audio_type != CODEC_ID_INTERPLAY_DPCM) {