diff --git a/libavfilter/graphparser.c b/libavfilter/graphparser.c index 4369dad432..a3cd9b714c 100644 --- a/libavfilter/graphparser.c +++ b/libavfilter/graphparser.c @@ -225,22 +225,20 @@ static int handle_link(char *name, AVFilterInOut **inout, int pad, if(p->type == LinkTypeIn && type == LinkTypeOut) { if(link_filter(filter, pad, p->filter, p->pad_idx, log_ctx) < 0) - goto fail; + return -1; } else if(p->type == LinkTypeOut && type == LinkTypeIn) { if(link_filter(p->filter, p->pad_idx, filter, pad, log_ctx) < 0) - goto fail; + return -1; } else { av_log(log_ctx, AV_LOG_ERROR, "Two links named '%s' are either both input or both output\n", name); - goto fail; + return -1; } p->filter = NULL; return 0; - fail: - return -1; } diff --git a/libavfilter/graphparser.h b/libavfilter/graphparser.h index 278095e940..c255824e27 100644 --- a/libavfilter/graphparser.h +++ b/libavfilter/graphparser.h @@ -35,6 +35,9 @@ * @param outpad pad index of the output * @return zero on success, -1 on error */ -int avfilter_parse_graph(AVFilterGraph *graph, const char *filters, AVFilterContext *in, int inpad, AVFilterContext *out, int outpad); +int avfilter_parse_graph(AVFilterGraph *graph, const char *filters, + AVFilterContext *in, int inpad, + AVFilterContext *out, int outpad, + AVClass *log_ctx); #endif /* FFMPEG_GRAPHPARSER_H */