From 891aeeee72b2d57d380ca097cc34be2b0c360233 Mon Sep 17 00:00:00 2001 From: Stefano Sabatini Date: Thu, 13 Jan 2011 01:00:36 +0000 Subject: [PATCH] Check linked pads media type mismatch in avfilter_link(). Originally committed as revision 26325 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavfilter/avfilter.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c index ebb2165184..6ecd4ce4c2 100644 --- a/libavfilter/avfilter.c +++ b/libavfilter/avfilter.c @@ -107,6 +107,13 @@ int avfilter_link(AVFilterContext *src, unsigned srcpad, src->outputs[srcpad] || dst->inputs[dstpad]) return -1; + if (src->output_pads[srcpad].type != dst->input_pads[dstpad].type) { + av_log(src, AV_LOG_ERROR, + "Media type mismatch between the '%s' filter output pad %d and the '%s' filter input pad %d\n", + src->name, srcpad, dst->name, dstpad); + return AVERROR(EINVAL); + } + src->outputs[srcpad] = dst-> inputs[dstpad] = link = av_mallocz(sizeof(AVFilterLink));