summaryrefslogtreecommitdiff
path: root/libavfilter
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2011-12-30 20:56:06 +0100
committerAnton Khirnov <anton@khirnov.net>2012-01-12 08:59:00 +0100
commit43fe6a29050fc34848731aa220292587f7ace5bd (patch)
tree1f32b28aeadd1e707d91544103e7f3b2dfc58373 /libavfilter
parentf7f3563214a4deb4bf664057a4cce0c4bf0bdb02 (diff)
vsrc_buffer: release the buffer on uninit.
Diffstat (limited to 'libavfilter')
-rw-r--r--libavfilter/vsrc_buffer.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/libavfilter/vsrc_buffer.c b/libavfilter/vsrc_buffer.c
index 178b3e68bb..e5b96a60cf 100644
--- a/libavfilter/vsrc_buffer.c
+++ b/libavfilter/vsrc_buffer.c
@@ -114,6 +114,14 @@ static av_cold int init(AVFilterContext *ctx, const char *args, void *opaque)
return 0;
}
+static av_cold void uninit(AVFilterContext *ctx)
+{
+ BufferSourceContext *s = ctx->priv;
+ if (s->buf)
+ avfilter_unref_buffer(s->buf);
+ s->buf = NULL;
+}
+
static int query_formats(AVFilterContext *ctx)
{
BufferSourceContext *c = ctx->priv;
@@ -167,6 +175,7 @@ AVFilter avfilter_vsrc_buffer = {
.query_formats = query_formats,
.init = init,
+ .uninit = uninit,
.inputs = (AVFilterPad[]) {{ .name = NULL }},
.outputs = (AVFilterPad[]) {{ .name = "default",