summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavfilter/vf_yadif.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libavfilter/vf_yadif.c b/libavfilter/vf_yadif.c
index 4ade615c4d..c31a283bad 100644
--- a/libavfilter/vf_yadif.c
+++ b/libavfilter/vf_yadif.c
@@ -314,11 +314,15 @@ static int poll_frame(AVFilterLink *link)
return 1;
val = avfilter_poll_frame(link->src->inputs[0]);
+ if (val <= 0)
+ return val;
if (val >= 1 && !yadif->next) { //FIXME change API to not requre this red tape
if ((ret = avfilter_request_frame(link->src->inputs[0])) < 0)
return ret;
val = avfilter_poll_frame(link->src->inputs[0]);
+ if (val <= 0)
+ return val;
}
assert(yadif->next || !val);