From 1f387ae4cb49070b3594086abd59027f07b4a773 Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Mon, 27 Sep 2021 03:55:43 +0200 Subject: [PATCH] avfilter/af_afade: Remove impossible branch Also don't call ff_inlink_queued_samples() unnecessarily often. Fixes Coverity issue 1427665. Signed-off-by: Andreas Rheinhardt --- libavfilter/af_afade.c | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/libavfilter/af_afade.c b/libavfilter/af_afade.c index 3bd0331e77..aecbb44f70 100644 --- a/libavfilter/af_afade.c +++ b/libavfilter/af_afade.c @@ -483,20 +483,18 @@ static int activate(AVFilterContext *ctx) } } - if (ff_inlink_queued_samples(ctx->inputs[0]) > s->nb_samples) { - nb_samples = ff_inlink_queued_samples(ctx->inputs[0]) - s->nb_samples; - if (nb_samples > 0) { - ret = ff_inlink_consume_samples(ctx->inputs[0], nb_samples, nb_samples, &in); - if (ret < 0) { - return ret; - } - } + nb_samples = ff_inlink_queued_samples(ctx->inputs[0]); + if (nb_samples > s->nb_samples) { + nb_samples -= s->nb_samples; + ret = ff_inlink_consume_samples(ctx->inputs[0], nb_samples, nb_samples, &in); + if (ret < 0) + return ret; in->pts = s->pts; s->pts += av_rescale_q(in->nb_samples, (AVRational){ 1, outlink->sample_rate }, outlink->time_base); return ff_filter_frame(outlink, in); - } else if (ff_inlink_queued_samples(ctx->inputs[0]) >= s->nb_samples && - ff_inlink_queued_samples(ctx->inputs[1]) >= s->nb_samples && s->cf0_eof) { + } else if (s->cf0_eof && nb_samples >= s->nb_samples && + ff_inlink_queued_samples(ctx->inputs[1]) >= s->nb_samples) { if (s->overlap) { out = ff_get_audio_buffer(outlink, s->nb_samples); if (!out)