X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavfilter%2Fvf_idet.c;h=9a25042a8954faba759bb7925e25370fa3b183e6;hb=0c7733904e54472fa5bea04b4a7c35ff6fea9890;hp=ed21eea4678b20e32a3cb3b7424e5d086824bf44;hpb=ba1a19bc35e4a6b9dc421feb92e3f15fa16adb8b;p=ffmpeg diff --git a/libavfilter/vf_idet.c b/libavfilter/vf_idet.c index ed21eea4678..9a25042a895 100644 --- a/libavfilter/vf_idet.c +++ b/libavfilter/vf_idet.c @@ -241,11 +241,12 @@ static int filter_frame(AVFilterLink *link, AVFrame *picref) idet->cur = idet->next; idet->next = picref; - if (!idet->cur) - return 0; + if (!idet->cur && + !(idet->cur = av_frame_clone(idet->next))) + return AVERROR(ENOMEM); if (!idet->prev) - idet->prev = av_frame_clone(idet->cur); + return 0; if (!idet->csp) idet->csp = av_pix_fmt_desc_get(link->format); @@ -284,7 +285,7 @@ static int request_frame(AVFilterLink *link) } else if (ret < 0) { return ret; } - } while (!idet->cur); + } while (!idet->prev); return 0; }