Commit 41096904 authored by Paul B Mahol's avatar Paul B Mahol

avfilter/vf_separatefields: stop leaking last frame

This can happen when filtering is ended without receiving EOF.
parent 463b81de
...@@ -118,6 +118,13 @@ static int request_frame(AVFilterLink *outlink) ...@@ -118,6 +118,13 @@ static int request_frame(AVFilterLink *outlink)
return ret; return ret;
} }
static av_cold void uninit(AVFilterContext *ctx)
{
SeparateFieldsContext *s = ctx->priv;
av_frame_free(&s->second);
}
static const AVFilterPad separatefields_inputs[] = { static const AVFilterPad separatefields_inputs[] = {
{ {
.name = "default", .name = "default",
...@@ -141,6 +148,7 @@ AVFilter ff_vf_separatefields = { ...@@ -141,6 +148,7 @@ AVFilter ff_vf_separatefields = {
.name = "separatefields", .name = "separatefields",
.description = NULL_IF_CONFIG_SMALL("Split input video frames into fields."), .description = NULL_IF_CONFIG_SMALL("Split input video frames into fields."),
.priv_size = sizeof(SeparateFieldsContext), .priv_size = sizeof(SeparateFieldsContext),
.uninit = uninit,
.inputs = separatefields_inputs, .inputs = separatefields_inputs,
.outputs = separatefields_outputs, .outputs = separatefields_outputs,
}; };
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment