[FFmpeg-devel] [PATCH 2/3] swscale/swscale: Fix several invalid shifts related to vChrDrop

Andreas Rheinhardt andreas.rheinhardt at gmail.com
Wed Jan 22 06:53:15 EET 2020


On Tue, Jan 21, 2020 at 11:24 PM Michael Niedermayer <michael at niedermayer.cc>
wrote:

> Fixes: Invalid shifts
> Fixes: #8166
>
> Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> ---
>  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;
>
> Also fixes the filter-crop_scale_vflip FATE-test.
I presume the multiplication here can't overflow, so LGTM.

- Andreas


More information about the ffmpeg-devel mailing list