diff --git a/libavcodec/imc.c b/libavcodec/imc.c index 2749099d22..e3f5e15324 100644 --- a/libavcodec/imc.c +++ b/libavcodec/imc.c @@ -449,6 +449,10 @@ static int bit_allocation(IMCContext *q, IMCChannel *chctx, iacc += chctx->bandWidthT[i]; summa += chctx->bandWidthT[i] * chctx->flcoeffs4[i]; } + + if (!iacc) + return AVERROR_INVALIDDATA; + chctx->bandWidthT[BANDS - 1] = 0; summa = (summa * 0.5 - freebits) / iacc;