summaryrefslogtreecommitdiff
path: root/libavfilter
diff options
context:
space:
mode:
authorMåns Rullgård <mans@mansr.com>2010-08-06 22:25:33 +0000
committerMåns Rullgård <mans@mansr.com>2010-08-06 22:25:33 +0000
commitf3b90d25ee43965e72577bcdf406af4c90b35bea (patch)
treebc6174dda0b7d0fbd947771b9c3c61a0c572e5d3 /libavfilter
parent18b95d85f2be14a4d2a2831ca2ccd9f6bb6cf412 (diff)
avfilter: free link in/out_formats in avfilter_destroy()
Originally committed as revision 24718 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavfilter')
-rw-r--r--libavfilter/avfilter.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c
index c040a9cefa..d4ce97792d 100644
--- a/libavfilter/avfilter.c
+++ b/libavfilter/avfilter.c
@@ -428,13 +428,19 @@ void avfilter_destroy(AVFilterContext *filter)
filter->filter->uninit(filter);
for(i = 0; i < filter->input_count; i ++) {
- if(filter->inputs[i])
+ if(filter->inputs[i]) {
filter->inputs[i]->src->outputs[filter->inputs[i]->srcpad] = NULL;
+ avfilter_formats_unref(&filter->inputs[i]->in_formats);
+ avfilter_formats_unref(&filter->inputs[i]->out_formats);
+ }
av_freep(&filter->inputs[i]);
}
for(i = 0; i < filter->output_count; i ++) {
- if(filter->outputs[i])
+ if(filter->outputs[i]) {
filter->outputs[i]->dst->inputs[filter->outputs[i]->dstpad] = NULL;
+ avfilter_formats_unref(&filter->outputs[i]->in_formats);
+ avfilter_formats_unref(&filter->outputs[i]->out_formats);
+ }
av_freep(&filter->outputs[i]);
}