From 80c37048539daa1d257d127d66502bde45c97c85 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Thu, 28 Jul 2011 15:43:10 +1000 Subject: [PATCH] dix: avoid using the VCP as modifier device Core grabs may change device when they're activated to reflect the master they apply to. If the device is a keyboard, modifierDevice is erroneously set to the Virtual Core Pointer. Signed-off-by: Peter Hutterer Reviewed-by: Daniel Stone --- dix/events.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dix/events.c b/dix/events.c index 8a4c6b9ac..25ff8997f 100644 --- a/dix/events.c +++ b/dix/events.c @@ -3678,7 +3678,7 @@ CheckPassiveGrabsOnWindow( if (tempGrab.type < GenericEvent) { grab->device = device; - grab->modifierDevice = GetPairedDevice(device); + grab->modifierDevice = GetMaster(device, MASTER_KEYBOARD); } for (other = inputInfo.devices; other; other = other->next)