[PATCH xserver] xfree86/modes: Use RRTransformEqual in xf86RandR12CrtcSet
Aaron Plattner
aplattner at nvidia.com
Fri Jun 16 06:25:33 UTC 2017
On 06/15/2017 07:31 PM, Michel Dänzer wrote:
> From: Michel Dänzer <michel.daenzer at amd.com>
>
> The memcmp didn't catch when e.g. only the filter changed. Tested by
> alternately running
>
> xrandr --output DVI-I-0 --scale-from 3840x2160 --filter bilinear
> xrandr --output DVI-I-0 --scale-from 3840x2160 --filter nearest
>
> Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>
> ---
> hw/xfree86/modes/xf86RandR12.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/hw/xfree86/modes/xf86RandR12.c b/hw/xfree86/modes/xf86RandR12.c
> index 55d88e331..fe8770d61 100644
> --- a/hw/xfree86/modes/xf86RandR12.c
> +++ b/hw/xfree86/modes/xf86RandR12.c
> @@ -1170,8 +1170,7 @@ xf86RandR12CrtcSet(ScreenPtr pScreen,
> if ((transform != NULL) != crtc->transformPresent)
> changed = TRUE;
> else if (transform &&
RRTransformEqual treats NULL transform pointers as the identity, so I
think you can just drop the transform && check here.
> - memcmp(&transform->transform, &crtc->transform.transform,
> - sizeof(transform->transform)) != 0)
> + !RRTransformEqual(transform, &crtc->transform))
> changed = TRUE;
>
> if (x != crtc->x || y != crtc->y)
>
--
nvpublic
More information about the xorg-devel
mailing list