This is an automated email from the git hooks/post-receive script.

Git pushed a commit to branch master
in repository ffmpeg.

commit 039b492019604d0bab79def7ac862d4bccfe3393
Author:     Niklas Haas <[email protected]>
AuthorDate: Tue Mar 10 17:03:37 2026 +0100
Commit:     Niklas Haas <[email protected]>
CommitDate: Wed Mar 18 09:09:44 2026 +0000

    swscale/ops_dispatch: correctly round tail size
    
    If the block size is somehow less than 8, this may round down, leading to
    one byte too few being copied (e.g. for monow/rgb4).
    
    This was never an issue for current backends because they all have block 
sizes
    of 8 or larger, but a future platform may have different requirements.
    
    Signed-off-by: Niklas Haas <[email protected]>
---
 libswscale/ops_dispatch.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libswscale/ops_dispatch.c b/libswscale/ops_dispatch.c
index fb176dba15..4e44fa562d 100644
--- a/libswscale/ops_dispatch.c
+++ b/libswscale/ops_dispatch.c
@@ -140,8 +140,8 @@ static int op_pass_setup(const SwsFrame *out, const 
SwsFrame *in,
     const int tail_size  = pass->width - safe_width;
     p->tail_off_in   = safe_width * p->pixel_bits_in  >> 3;
     p->tail_off_out  = safe_width * p->pixel_bits_out >> 3;
-    p->tail_size_in  = tail_size  * p->pixel_bits_in  >> 3;
-    p->tail_size_out = tail_size  * p->pixel_bits_out >> 3;
+    p->tail_size_in  = (tail_size * p->pixel_bits_in  + 7) >> 3;
+    p->tail_size_out = (tail_size * p->pixel_bits_out + 7) >> 3;
     p->memcpy_first  = false;
     p->memcpy_last   = false;
     p->memcpy_out    = false;

_______________________________________________
ffmpeg-cvslog mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to