From db9dfa3cc360bdee4d571cfea5f468b3f1426b05 Mon Sep 17 00:00:00 2001
From: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Date: Mon, 27 Sep 2010 17:28:53 +0000
Subject: [PATCH] Make avfilter_insert_filter() propagate an error code in case
 the called avfilter_link() fails.

Originally committed as revision 25229 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 libavfilter/avfilter.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c
index 4c61bf436e2..9e1940be8fd 100644
--- a/libavfilter/avfilter.c
+++ b/libavfilter/avfilter.c
@@ -124,6 +124,7 @@ int avfilter_link(AVFilterContext *src, unsigned srcpad,
 int avfilter_insert_filter(AVFilterLink *link, AVFilterContext *filt,
                            unsigned in, unsigned out)
 {
+    int ret;
     unsigned dstpad_idx = link->dstpad - link->dst->input_pads;
 
     av_log(link->dst, AV_LOG_INFO, "auto-inserting filter '%s' "
@@ -131,10 +132,10 @@ int avfilter_insert_filter(AVFilterLink *link, AVFilterContext *filt,
            filt->name, link->src->name, link->dst->name);
 
     link->dst->inputs[dstpad_idx] = NULL;
-    if (avfilter_link(filt, out, link->dst, dstpad_idx)) {
+    if ((ret = avfilter_link(filt, out, link->dst, dstpad_idx)) < 0) {
         /* failed to link output filter to new filter */
         link->dst->inputs[dstpad_idx] = link;
-        return -1;
+        return ret;
     }
 
     /* re-hookup the link to the new destination filter we inserted */
-- 
GitLab