summaryrefslogtreecommitdiff
path: root/libavcodec/ra288.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2015-09-04 01:18:13 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2015-09-04 02:19:06 +0200
commit194dd155582d5b71fc3bb78ef77ce64d3f6c521d (patch)
tree079337bcc2a200904f29da6743fd8985afdc204e /libavcodec/ra288.c
parent21d8c6612fcec630785af5c0ae087d0393bb2a8e (diff)
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.c6
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));