Commit 194dd155 authored by Michael Niedermayer's avatar Michael Niedermayer

avcodec/ira288: Check init_get_bits8() for failure

Fixes: CID1322321
Signed-off-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
parent 21d8c661
...@@ -207,14 +207,16 @@ static int ra288_decode_frame(AVCodecContext * avctx, void *data, ...@@ -207,14 +207,16 @@ static int ra288_decode_frame(AVCodecContext * avctx, void *data,
return AVERROR_INVALIDDATA; return AVERROR_INVALIDDATA;
} }
ret = init_get_bits8(&gb, buf, avctx->block_align);
if (ret < 0)
return ret;
/* get output buffer */ /* get output buffer */
frame->nb_samples = RA288_BLOCK_SIZE * RA288_BLOCKS_PER_FRAME; frame->nb_samples = RA288_BLOCK_SIZE * RA288_BLOCKS_PER_FRAME;
if ((ret = ff_get_buffer(avctx, frame, 0)) < 0) if ((ret = ff_get_buffer(avctx, frame, 0)) < 0)
return ret; return ret;
out = (float *)frame->data[0]; out = (float *)frame->data[0];
init_get_bits8(&gb, buf, avctx->block_align);
for (i=0; i < RA288_BLOCKS_PER_FRAME; i++) { for (i=0; i < RA288_BLOCKS_PER_FRAME; i++) {
float gain = amptable[get_bits(&gb, 3)]; float gain = amptable[get_bits(&gb, 3)];
int cb_coef = get_bits(&gb, 6 + (i&1)); int cb_coef = get_bits(&gb, 6 + (i&1));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment