[PATCH] Revert "xkb: ProcesssPointerEvent must work on the VCP if it gets the VCP"

Hans de Goede hdegoede at redhat.com
Tue Apr 1 23:38:34 PDT 2014


Hi,

On 04/02/2014 06:22 AM, Peter Hutterer wrote:
> This was the wrong fix to the problem, and it triggered a change in XKB
> behavior: previously a button event would unlock a latched modifier, now it
> doesn't anymore.
> https://bugs.freedesktop.org/show_bug.cgi?id=73155
> 
> Note that the new behavior is is strictly spec compliant but we've had the
> other behavior for a long time so we shouldn't break it.
> 
> The bug this patch originally fixed was a null-pointer dereference when
> releasing button events on server shutdown. This was addressed by the commit
> below, so the need for this patch has gone away anyway.
> 
> commit 3e4be4033aed78b2bb3a18d51f0963989efd1af3
> Author: Peter Hutterer <peter.hutterer at who-t.net>
> Date:   Fri Jan 25 11:47:32 2013 +1000
> 
>     dix: when shutting down slave devices, shut down xtest devices last
> 
> This reverts commit 2decff6393a44b56d80d53570718f95354fde454.
> 
> Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>

ACK.

Reviewed-by:

Hans de Goede <hdegoede at redhat.com>

Regards,

Hans

> ---
>  xkb/xkbAccessX.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/xkb/xkbAccessX.c b/xkb/xkbAccessX.c
> index cb4bca0..5f3de0d 100644
> --- a/xkb/xkbAccessX.c
> +++ b/xkb/xkbAccessX.c
> @@ -711,7 +711,7 @@ ProcessPointerEvent(InternalEvent *ev, DeviceIntPtr mouse)
>      xkbDeviceInfoPtr xkbPrivPtr = XKBDEVICEINFO(mouse);
>      DeviceEvent *event = &ev->device_event;
>  
> -    dev = (IsMaster(mouse) || IsFloating(mouse)) ? mouse : GetMaster(mouse, MASTER_KEYBOARD);
> +    dev = IsFloating(mouse) ? mouse : GetMaster(mouse, MASTER_KEYBOARD);
>  
>      if (dev && dev->key) {
>          xkbi = dev->key->xkbInfo;
> 


More information about the xorg-devel mailing list