diff options
author | Anton Khirnov <anton@khirnov.net> | 2011-12-30 20:56:06 +0100 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2012-01-12 08:59:00 +0100 |
commit | 43fe6a29050fc34848731aa220292587f7ace5bd (patch) | |
tree | 1f32b28aeadd1e707d91544103e7f3b2dfc58373 /libavfilter | |
parent | f7f3563214a4deb4bf664057a4cce0c4bf0bdb02 (diff) | |
download | ffmpeg-43fe6a29050fc34848731aa220292587f7ace5bd.tar.gz |
vsrc_buffer: release the buffer on uninit.
Diffstat (limited to 'libavfilter')
-rw-r--r-- | libavfilter/vsrc_buffer.c | 9 |
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", |