[FFmpeg-cvslog] swscale/swscale: Fix several invalid shifts related to vChrDrop

Michael Niedermayer git at videolan.org
Wed Jan 22 19:46:00 EET 2020


ffmpeg | branch: master | Michael Niedermayer <michael at niedermayer.cc> | Tue Jan 21 22:52:19 2020 +0100| [a6ca22c11834c0ff075592e3f051d41068c407db] | committer: Michael Niedermayer

swscale/swscale: Fix several invalid shifts related to vChrDrop

Fixes: Invalid shifts
Fixes: #8166
Fixes: filter-crop_scale_vflip FATE-test

Reviewed-by: Andreas Rheinhardt <andreas.rheinhardt at gmail.com>
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=a6ca22c11834c0ff075592e3f051d41068c407db
---

 libswscale/swscale.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libswscale/swscale.c b/libswscale/swscale.c
index 4ecfa88ff7..8436f056d4 100644
--- a/libswscale/swscale.c
+++ b/libswscale/swscale.c
@@ -295,8 +295,8 @@ static int swscale(SwsContext *c, const uint8_t *src[],
         srcStride[2] =
         srcStride[3] = srcStride[0];
     }
-    srcStride[1] <<= c->vChrDrop;
-    srcStride[2] <<= c->vChrDrop;
+    srcStride[1] *= 1 << c->vChrDrop;
+    srcStride[2] *= 1 << c->vChrDrop;
 
     DEBUG_BUFFERS("swscale() %p[%d] %p[%d] %p[%d] %p[%d] -> %p[%d] %p[%d] %p[%d] %p[%d]\n",
                   src[0], srcStride[0], src[1], srcStride[1],



More information about the ffmpeg-cvslog mailing list