avcodec/wmaprodec: check that there are input bits left in decode_subframe_length()

Fixes infinite loop
Fixes Ticket2987

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
pull/36/merge
Michael Niedermayer 11 years ago
parent 45f0623ae3
commit c99d27287d
  1. 3
      libavcodec/wmaprodec.c

@ -500,6 +500,9 @@ static int decode_subframe_length(WMAProDecodeCtx *s, int offset)
if (offset == s->samples_per_frame - s->min_samples_per_subframe)
return s->min_samples_per_subframe;
if (get_bits_left(&s->gb) < 1)
return AVERROR_INVALIDDATA;
/** 1 bit indicates if the subframe is of maximum length */
if (s->max_subframe_len_bit) {
if (get_bits1(&s->gb))

Loading…
Cancel
Save