diff --git a/libavfilter/vf_yadif.c b/libavfilter/vf_yadif.c index fb4862d0be..d7fa98acc4 100644 --- a/libavfilter/vf_yadif.c +++ b/libavfilter/vf_yadif.c @@ -17,6 +17,7 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ +#include "libavutil/avassert.h" #include "libavutil/cpu.h" #include "libavutil/common.h" #include "libavutil/pixdesc.h" @@ -238,6 +239,8 @@ static void start_frame(AVFilterLink *link, AVFilterBufferRef *picref) AVFilterContext *ctx = link->dst; YADIFContext *yadif = ctx->priv; + av_assert0(picref); + if (yadif->frame_pending) return_frame(ctx, 1); @@ -308,7 +311,7 @@ static int request_frame(AVFilterLink *link) ret = avfilter_request_frame(link->src->inputs[0]); - if (ret == AVERROR_EOF && yadif->next) { + if (ret == AVERROR_EOF && yadif->cur) { AVFilterBufferRef *next = avfilter_ref_buffer(yadif->next, AV_PERM_READ); next->pts = yadif->next->pts * 2 - yadif->cur->pts;