diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2015-09-04 01:18:13 +0200 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2015-09-04 02:19:06 +0200 |
commit | 194dd155582d5b71fc3bb78ef77ce64d3f6c521d (patch) | |
tree | 079337bcc2a200904f29da6743fd8985afdc204e /libavcodec/ra288.c | |
parent | 21d8c6612fcec630785af5c0ae087d0393bb2a8e (diff) | |
download | ffmpeg-194dd155582d5b71fc3bb78ef77ce64d3f6c521d.tar.gz |
avcodec/ira288: Check init_get_bits8() for failure
Fixes: CID1322321
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec/ra288.c')
-rw-r--r-- | libavcodec/ra288.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libavcodec/ra288.c b/libavcodec/ra288.c index 00ce49102b..8f5a7f2289 100644 --- a/libavcodec/ra288.c +++ b/libavcodec/ra288.c @@ -207,14 +207,16 @@ static int ra288_decode_frame(AVCodecContext * avctx, void *data, return AVERROR_INVALIDDATA; } + ret = init_get_bits8(&gb, buf, avctx->block_align); + if (ret < 0) + return ret; + /* get output buffer */ frame->nb_samples = RA288_BLOCK_SIZE * RA288_BLOCKS_PER_FRAME; if ((ret = ff_get_buffer(avctx, frame, 0)) < 0) return ret; out = (float *)frame->data[0]; - init_get_bits8(&gb, buf, avctx->block_align); - for (i=0; i < RA288_BLOCKS_PER_FRAME; i++) { float gain = amptable[get_bits(&gb, 3)]; int cb_coef = get_bits(&gb, 6 + (i&1)); |