aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2019-09-28 04:25:56 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-07-03 16:17:40 +0200
commit0b18f8024194ffd898512ca0ed1479ff28486df1 (patch)
tree7af952c5d19134caf573d23a374ca0ccf27b915c
parent4ee6a9b1bbdf89486729193fd2822c511c531121 (diff)
downloadffmpeg-0b18f8024194ffd898512ca0ed1479ff28486df1.tar.gz
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@gmail.com> Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 4294dc3589a3ab973b10a85b576ff15e3ffb000d) Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-rw-r--r--libavfilter/vf_xbr.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavfilter/vf_xbr.c b/libavfilter/vf_xbr.c
index 9893e0cc80..989d832b8f 100644
--- a/libavfilter/vf_xbr.c
+++ b/libavfilter/vf_xbr.c
@@ -391,7 +391,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;