diff options
Diffstat (limited to 'avplay.c')
-rw-r--r-- | avplay.c | 10 |
1 files changed, 8 insertions, 2 deletions
@@ -1580,8 +1580,10 @@ static int video_thread(void *arg) AVFilterContext *filt_out = NULL, *filt_in = NULL; int last_w = is->video_st->codec->width; int last_h = is->video_st->codec->height; - if (!graph) + if (!graph) { + av_frame_free(&frame); return AVERROR(ENOMEM); + } if ((ret = configure_video_filters(graph, is, vfilters)) < 0) goto the_end; @@ -1589,8 +1591,12 @@ static int video_thread(void *arg) filt_out = is->out_video_filter; #endif - if (!frame) + if (!frame) { +#if CONFIG_AVFILTER + avfilter_graph_free(&graph); +#endif return AVERROR(ENOMEM); + } for (;;) { #if CONFIG_AVFILTER |