mirror of https://git.ffmpeg.org/ffmpeg.git
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>
This commit is contained in:
parent
45f0623ae3
commit
c99d27287d
|
@ -500,6 +500,9 @@ static int decode_subframe_length(WMAProDecodeCtx *s, int offset)
|
||||||
if (offset == s->samples_per_frame - s->min_samples_per_subframe)
|
if (offset == s->samples_per_frame - s->min_samples_per_subframe)
|
||||||
return 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 */
|
/** 1 bit indicates if the subframe is of maximum length */
|
||||||
if (s->max_subframe_len_bit) {
|
if (s->max_subframe_len_bit) {
|
||||||
if (get_bits1(&s->gb))
|
if (get_bits1(&s->gb))
|
||||||
|
|
Loading…
Reference in New Issue