Andrea Canciani <ranm...@gmail.com> writes:

> The function swapStops repeatedly swaps the color components as
> CARD16, but incorrectly steps over them as if they were CARD32.
> 
> This causes half of the stops not to be swapped at all and some
> unrelated data be swapped instead.
> ---
>  render/render.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/render/render.c b/render/render.c
> index 00241f9..85a4392 100644
> --- a/render/render.c
> +++ b/render/render.c
> @@ -2552,8 +2552,8 @@ static void swapStops(void *stuff, int num)
>      }
>      colors = (CARD16 *)(stops);
>      for (i = 0; i < 4*num; ++i) {
> -        swaps(stops, n);
> -        ++stops;
> +        swaps(colors, n);
> +        ++colors;
>      }
>  }

Reviewed-by: Soren Sandmann <sandm...@daimi.au.dk>


Soren
_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to