Module: libav Branch: master Commit: c77d409bf95954aceb762dd800d1ee2868c4b0d4
Author: Martin Storsjö <mar...@martin.st> Committer: Martin Storsjö <mar...@martin.st> Date: Tue Sep 17 19:33:48 2013 +0300 twinvqdec: Check the ibps parameter separately This is required, since invalid parameters actually could pass the switch check below. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-sta...@libav.org Signed-off-by: Martin Storsjö <mar...@martin.st> --- libavcodec/twinvqdec.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libavcodec/twinvqdec.c b/libavcodec/twinvqdec.c index a88b6ff..580c1f2 100644 --- a/libavcodec/twinvqdec.c +++ b/libavcodec/twinvqdec.c @@ -356,6 +356,10 @@ static av_cold int twinvq_decode_init(AVCodecContext *avctx) : AV_CH_LAYOUT_STEREO; ibps = avctx->bit_rate / (1000 * avctx->channels); + if (ibps < 8 || ibps > 48) { + av_log(avctx, AV_LOG_ERROR, "Bad bitrate per channel value %d\n", ibps); + return AVERROR_INVALIDDATA; + } switch ((isampf << 8) + ibps) { case (8 << 8) + 8: _______________________________________________ libav-commits mailing list libav-commits@libav.org https://lists.libav.org/mailman/listinfo/libav-commits