@@ -194,10 +194,8 @@ static av_cold int join_init(AVFilterContext *ctx)
if (!pad.name)
return AVERROR(ENOMEM);
- if ((ret = ff_insert_inpad(ctx, i, &pad)) < 0) {
- av_freep(&pad.name);
+ if ((ret = ff_insert_inpad(ctx, i, &pad)) < 0)
return ret;
- }
}
return 0;
@@ -212,10 +210,6 @@ static av_cold void join_uninit(AVFilterContext *ctx)
av_frame_free(&s->input_frames[i]);
}
- for (i = 0; i < ctx->nb_inputs; i++) {
- av_freep(&ctx->input_pads[i].name);
- }
-
av_freep(&s->channels);
av_freep(&s->buffers);
av_freep(&s->input_frames);
@@ -552,4 +546,5 @@ const AVFilter ff_af_join = {
.inputs = NULL,
.outputs = avfilter_af_join_outputs,
.flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
+ .flags_internal = FF_FILTER_FLAG_FREE_INPADS,
};
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com> --- libavfilter/af_join.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-)