[FFmpeg-cvslog] avfilter/vf_scale: test return code of scale_frame()
Niklas Haas
git at videolan.org
Wed Jul 10 12:50:13 EEST 2024
ffmpeg | branch: master | Niklas Haas <git at haasn.dev> | Tue Jul 9 11:32:42 2024 +0200| [0deb301ba9cd71a4d35384c9584b800161777852] | committer: Niklas Haas
avfilter/vf_scale: test return code of scale_frame()
Instead of testing the returned frame against NULL, test the return code
itself, going more in line with the usual behavior of such functions.
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=0deb301ba9cd71a4d35384c9584b800161777852
---
libavfilter/vf_scale.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/libavfilter/vf_scale.c b/libavfilter/vf_scale.c
index a1a322ed9e..ae7356fd7b 100644
--- a/libavfilter/vf_scale.c
+++ b/libavfilter/vf_scale.c
@@ -883,7 +883,6 @@ static int scale_frame(AVFilterLink *link, AVFrame **frame_in,
int frame_changed;
*frame_in = NULL;
- *frame_out = NULL;
if (in->colorspace == AVCOL_SPC_YCGCO)
av_log(link->dst, AV_LOG_WARNING, "Detected unsupported YCgCo colorspace.\n");
@@ -1064,14 +1063,15 @@ FF_ENABLE_DEPRECATION_WARNINGS
}
ret = scale_frame(ctx->inputs[0], &in, &out);
- if (out) {
- out->pts = av_rescale_q(fs->pts, fs->time_base, outlink->time_base);
- return ff_filter_frame(outlink, out);
- }
+ if (ret < 0)
+ goto err;
+
+ av_assert0(out);
+ out->pts = av_rescale_q(fs->pts, fs->time_base, outlink->time_base);
+ return ff_filter_frame(outlink, out);
err:
- if (ret < 0)
- av_frame_free(&in);
+ av_frame_free(&in);
return ret;
}
More information about the ffmpeg-cvslog
mailing list