[FFmpeg-devel] [PATCH 1/3] avutil/frame: use size_t for total_size in get_video_buffer()

James Almer jamrial at gmail.com
Sat Nov 16 19:01:24 EET 2024


Signed-off-by: James Almer <jamrial at gmail.com>
---
 libavutil/frame.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/libavutil/frame.c b/libavutil/frame.c
index f0a0dba018..f42f310023 100644
--- a/libavutil/frame.c
+++ b/libavutil/frame.c
@@ -173,10 +173,10 @@ void av_frame_free(AVFrame **frame)
 static int get_video_buffer(AVFrame *frame, int align)
 {
     const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(frame->format);
-    int ret, padded_height, total_size;
+    int ret, padded_height;
     int plane_padding = FFMAX(16 + 16/*STRIDE_ALIGN*/, align);
     ptrdiff_t linesizes[4];
-    size_t sizes[4];
+    size_t total_size, sizes[4];
 
     if (!desc)
         return AVERROR(EINVAL);
@@ -211,7 +211,7 @@ static int get_video_buffer(AVFrame *frame, int align)
 
     total_size = 4*plane_padding;
     for (int i = 0; i < 4; i++) {
-        if (sizes[i] > INT_MAX - total_size)
+        if (sizes[i] > SIZE_MAX - total_size)
             return AVERROR(EINVAL);
         total_size += sizes[i];
     }
-- 
2.47.0



More information about the ffmpeg-devel mailing list