[FFmpeg-cvslog] Make avfilter_graph_parse() not free the input graph

Stefano Sabatini git
Sun Feb 6 21:08:52 CET 2011


ffmpeg | branch: master | Stefano Sabatini <stefano.sabatini-lala at poste.it> | Tue Feb  1 21:52:07 2011 +0100| [c68be8e135ddcd8a043142d26a5fdc4ef01b1218] | committer: Michael Niedermayer

Make avfilter_graph_parse() not free the input graph

Make avfilter_graph_parse() only release the internal structures
allocated during the parsing, and leave to free the graph itself to
the calling code.

This approach looks cleaner, as the graph is not allocated by the
function.

Signed-off-by: Mans Rullgard <mans at mansr.com>
(cherry picked from commit e8e5dde779fca80d86e00baea26d1baca333f4c0)

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c68be8e135ddcd8a043142d26a5fdc4ef01b1218
---

 libavfilter/graphparser.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/libavfilter/graphparser.c b/libavfilter/graphparser.c
index 7151e4f..47179e5 100644
--- a/libavfilter/graphparser.c
+++ b/libavfilter/graphparser.c
@@ -393,7 +393,9 @@ int avfilter_graph_parse(AVFilterGraph *graph, const char *filters,
     return 0;
 
  fail:
-    avfilter_graph_free(graph);
+    for (; graph->filter_count > 0; graph->filter_count--)
+        avfilter_free(graph->filters[graph->filter_count - 1]);
+    av_freep(&graph->filters);
     free_inout(open_inputs);
     free_inout(open_outputs);
     free_inout(curr_inputs);




More information about the ffmpeg-cvslog mailing list