diff --git a/libavfilter/vf_separatefields.c b/libavfilter/vf_separatefields.c index 69653c991f..3ed222f271 100644 --- a/libavfilter/vf_separatefields.c +++ b/libavfilter/vf_separatefields.c @@ -118,6 +118,13 @@ static int request_frame(AVFilterLink *outlink) return ret; } +static av_cold void uninit(AVFilterContext *ctx) +{ + SeparateFieldsContext *s = ctx->priv; + + av_frame_free(&s->second); +} + static const AVFilterPad separatefields_inputs[] = { { .name = "default", @@ -141,6 +148,7 @@ AVFilter ff_vf_separatefields = { .name = "separatefields", .description = NULL_IF_CONFIG_SMALL("Split input video frames into fields."), .priv_size = sizeof(SeparateFieldsContext), + .uninit = uninit, .inputs = separatefields_inputs, .outputs = separatefields_outputs, };