OSDN Git Service

wmadec: check nb_frames
authorMichael Niedermayer <michaelni@gmx.at>
Sun, 3 Mar 2013 15:50:47 +0000 (16:50 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Sun, 3 Mar 2013 15:50:47 +0000 (16:50 +0100)
Improves error message for Ticket968

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/wmadec.c

index df5089f..cdd2850 100644 (file)
@@ -827,6 +827,10 @@ static int wma_decode_superframe(AVCodecContext *avctx, void *data,
         /* read super frame header */
         skip_bits(&s->gb, 4); /* super frame index */
         nb_frames = get_bits(&s->gb, 4) - (s->last_superframe_len <= 0);
+        if (nb_frames <= 0) {
+            av_log(avctx, AV_LOG_ERROR, "nb_frames is %d\n", nb_frames);
+            return AVERROR_INVALIDDATA;
+        }
     } else {
         nb_frames = 1;
     }