summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <[email protected]>2019-09-24 23:50:23 +0200
committerMichael Niedermayer <[email protected]>2019-12-31 19:51:55 +0100
commitc0f315b835174493db2def644df8962149eedcd8 (patch)
treeeea0d0dfe676839ea1be75d69bdd54d97f94b88d
parent026f243d71f655e72de268aa3f40be597b2a1c81 (diff)
avcodec/sbcdec: Initialize number of channels
Fixes: out of array access Fixes: 17609/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_SBC_fuzzer-5758729319874560 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Reviewed-by: Paul B Mahol <[email protected]> Reviewed-by: Moritz Barsnick <[email protected]> Signed-off-by: Michael Niedermayer <[email protected]> (cherry picked from commit 02fb6a214717d40487cae2b06f13b14fabb6e101) Signed-off-by: Michael Niedermayer <[email protected]>
-rw-r--r--libavcodec/sbcdec.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/libavcodec/sbcdec.c b/libavcodec/sbcdec.c
index 546b38c106..937946e2d2 100644
--- a/libavcodec/sbcdec.c
+++ b/libavcodec/sbcdec.c
@@ -348,6 +348,7 @@ static int sbc_decode_frame(AVCodecContext *avctx,
if (frame_length <= 0)
return frame_length;
+ avctx->channels =
frame->channels = sbc->frame.channels;
frame->format = AV_SAMPLE_FMT_S16P;
frame->nb_samples = sbc->frame.blocks * sbc->frame.subbands;