Browse Source

Make parse_outputs() always return meaningful error codes.

Originally committed as revision 25698 to svn://svn.ffmpeg.org/ffmpeg/trunk
Stefano Sabatini 14 years ago
parent
commit
0cc8b65950
1 changed files with 5 additions and 5 deletions
  1. 5 5
      libavfilter/graphparser.c

+ 5 - 5
libavfilter/graphparser.c

@@ -277,7 +277,7 @@ static int parse_outputs(const char **buf, AVFilterInOut **curr_inputs,
                          AVFilterInOut **open_inputs,
                          AVFilterInOut **open_outputs, AVClass *log_ctx)
 {
-    int pad = 0;
+    int ret, pad = 0;
 
     while (**buf == '[') {
         char *name = parse_link_name(buf, log_ctx);
@@ -287,15 +287,15 @@ static int parse_outputs(const char **buf, AVFilterInOut **curr_inputs,
         *curr_inputs = (*curr_inputs)->next;
 
         if (!name)
-            return -1;
+            return AVERROR(EINVAL);
 
         /* First check if the label is not in the open_inputs list */
         match = extract_inout(name, open_inputs);
 
         if (match) {
-            if (link_filter(input->filter, input->pad_idx,
-                            match->filter, match->pad_idx, log_ctx) < 0)
-                return -1;
+            if ((ret = link_filter(input->filter, input->pad_idx,
+                                   match->filter, match->pad_idx, log_ctx)) < 0)
+                return ret;
             av_free(match->name);
             av_free(name);
             av_free(match);