From 639208cc6adae159008e089f7d82f132720f7fc9 Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Sat, 9 Mar 2024 19:53:11 +0100 Subject: fftools/ffmpeg_filter: don't forward EOF in close_output() The caller does not need or expect it, and it can lead to terminating filtering prematurely in case there is more than one output. --- fftools/ffmpeg_filter.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'fftools') diff --git a/fftools/ffmpeg_filter.c b/fftools/ffmpeg_filter.c index 65574809bf..8134afebd7 100644 --- a/fftools/ffmpeg_filter.c +++ b/fftools/ffmpeg_filter.c @@ -2199,7 +2199,8 @@ static int close_output(OutputFilterPriv *ofp, FilterGraphThread *fgt) fgt->eof_out[ofp->index] = 1; - return sch_filter_send(fgp->sch, fgp->sch_idx, ofp->index, NULL); + ret = sch_filter_send(fgp->sch, fgp->sch_idx, ofp->index, NULL); + return (ret == AVERROR_EOF) ? 0 : ret; } static int fg_output_frame(OutputFilterPriv *ofp, FilterGraphThread *fgt, -- cgit v1.2.3