From e1ce756844e684876318570dcebc74bc66c084f0 Mon Sep 17 00:00:00 2001
From: Alex Converse <alex.converse@gmail.com>
Date: Tue, 10 Apr 2012 18:18:53 -0700
Subject: [PATCH] avplay: Don't free video filters string until the end of
 decoding.

av_freep()ing inside configure_video_filters() leaves a dangling
reference in the calling code, and the filter string is needed again when
reconfiguring video filters for a size change.
---
 avplay.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/avplay.c b/avplay.c
index d1cf53d1176..488d0fcd13c 100644
--- a/avplay.c
+++ b/avplay.c
@@ -1731,7 +1731,6 @@ static int configure_video_filters(AVFilterGraph *graph, VideoState *is, const c
 
         if ((ret = avfilter_graph_parse(graph, vfilters, inputs, outputs, NULL)) < 0)
             return ret;
-        av_freep(&vfilters);
     } else {
         if ((ret = avfilter_link(filt_src, 0, filt_out, 0)) < 0)
             return ret;
@@ -1831,6 +1830,7 @@ static int video_thread(void *arg)
     }
  the_end:
 #if CONFIG_AVFILTER
+    av_freep(&vfilters);
     avfilter_graph_free(&graph);
 #endif
     av_free(frame);
-- 
GitLab