From fa77dd639da796b32d84bed2a00d64b2dd434707 Mon Sep 17 00:00:00 2001 From: Peter Ross Date: Wed, 16 Sep 2009 11:29:47 +0000 Subject: [PATCH] perform sanity check on number of audio channels in avcodec_open() Originally committed as revision 19877 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/utils.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavcodec/utils.c b/libavcodec/utils.c index 43147a521..e22bc3302 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -471,7 +471,9 @@ int attribute_align_arg avcodec_open(AVCodecContext *avctx, AVCodec *codec) else if(avctx->width && avctx->height) avcodec_set_dimensions(avctx, avctx->width, avctx->height); - if((avctx->coded_width||avctx->coded_height) && avcodec_check_dimensions(avctx,avctx->coded_width,avctx->coded_height)){ +#define SANE_NB_CHANNELS 128U + if((avctx->coded_width||avctx->coded_height) && avcodec_check_dimensions(avctx,avctx->coded_width,avctx->coded_height) || + avctx->channels > SANE_NB_CHANNELS) { av_freep(&avctx->priv_data); ret = AVERROR(EINVAL); goto end; -- 2.11.0