[FFmpeg-cvslog] avfilter/vf_xbr: Fix left shift of negative number
Andreas Rheinhardt
git at videolan.org
Fri Jul 3 03:12:42 EEST 2020
ffmpeg | branch: release/3.4 | Andreas Rheinhardt <andreas.rheinhardt at gmail.com> | Sat Sep 28 04:25:56 2019 +0200| [59b73dc1f386ac8f3582e0b7cbb91e22c41f9f24] | committer: Andreas Rheinhardt
avfilter/vf_xbr: Fix left shift of negative number
Affected every usage of vf_xbr, e.g. the FATE-tests filter-2xbr,
filter-3xbr, filter-4xbr.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at gmail.com>
Reviewed-by: Paul B Mahol <onemda at gmail.com>
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
(cherry picked from commit 4294dc3589a3ab973b10a85b576ff15e3ffb000d)
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at gmail.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=59b73dc1f386ac8f3582e0b7cbb91e22c41f9f24
---
libavfilter/vf_xbr.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavfilter/vf_xbr.c b/libavfilter/vf_xbr.c
index 78094e0287..5a6dcc4dba 100644
--- a/libavfilter/vf_xbr.c
+++ b/libavfilter/vf_xbr.c
@@ -395,7 +395,7 @@ static int init(AVFilterContext *ctx)
int startg = FFMAX3(-bg, -rg, 0);
int endg = FFMIN3(255-bg, 255-rg, 255);
uint32_t y = (uint32_t)(( 299*rg + 1000*startg + 114*bg)/1000);
- c = bg + (rg<<16) + 0x010101 * startg;
+ c = bg + rg * (1 << 16) + 0x010101 * startg;
for (g = startg; g <= endg; g++) {
s->rgbtoyuv[c] = ((y++) << 16) + (u << 8) + v;
c+= 0x010101;
More information about the ffmpeg-cvslog
mailing list