36 lines
1.1 KiB
Diff
36 lines
1.1 KiB
Diff
From 95d890bf18e535e1ae5a9e24d801ca021e288804 Mon Sep 17 00:00:00 2001
|
|
From: Jonathan Kang <jonathankang@gnome.org>
|
|
Date: Thu, 15 Jan 2026 15:28:26 +0800
|
|
Subject: [PATCH] swscale/output: Fix integer overflow in
|
|
yuv2ya16_X_c_template()
|
|
|
|
---
|
|
libswscale/output.c | 4 ++--
|
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/libswscale/output.c b/libswscale/output.c
|
|
index be22279229..49af3818b9 100644
|
|
--- a/libswscale/output.c
|
|
+++ b/libswscale/output.c
|
|
@@ -911,7 +911,7 @@ yuv2ya16_X_c_template(SwsContext *c, const int16_t *lumFilter,
|
|
int A = 0xffff;
|
|
|
|
for (j = 0; j < lumFilterSize; j++)
|
|
- Y += lumSrc[j][i] * lumFilter[j];
|
|
+ Y += lumSrc[j][i] * (unsigned)lumFilter[j];
|
|
|
|
Y >>= 15;
|
|
Y += (1<<3) + 0x8000;
|
|
@@ -920,7 +920,7 @@ yuv2ya16_X_c_template(SwsContext *c, const int16_t *lumFilter,
|
|
if (hasAlpha) {
|
|
A = -0x40000000 + (1<<14);
|
|
for (j = 0; j < lumFilterSize; j++)
|
|
- A += alpSrc[j][i] * lumFilter[j];
|
|
+ A += alpSrc[j][i] * (unsigned)lumFilter[j];
|
|
|
|
A >>= 15;
|
|
A += 0x8000;
|
|
--
|
|
2.52.0
|
|
|