From 2936635698619271a790004480a14285149277cb Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Fri, 18 Feb 2011 12:06:56 +1000 Subject: [PATCH] xkb: Fix a check for MASTER_KEYBOARD And copy into the master keyboard, not just the directly attached device. Signed-off-by: Peter Hutterer Reviewed-by: Daniel Stone Reviewed-by: Benjamin Tissoires --- xkb/xkb.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/xkb/xkb.c b/xkb/xkb.c index 4557350bf..22417533e 100644 --- a/xkb/xkb.c +++ b/xkb/xkb.c @@ -5883,12 +5883,10 @@ ProcXkbGetKbdByName(ClientPtr client) nkn.changed|= XkbNKN_GeometryMask; XkbSendNewKeyboardNotify(dev,&nkn); - if (!IsMaster(dev) && !IsFloating(dev)) - { - DeviceIntPtr master = dev->u.master; - if (master->u.lastSlave == dev) - { - XkbCopyDeviceKeymap(dev->u.master, dev); + if (!IsMaster(dev)) { + DeviceIntPtr master = GetMaster(dev, MASTER_KEYBOARD); + if (master && master->u.lastSlave == dev) { + XkbCopyDeviceKeymap(master, dev); XkbSendNewKeyboardNotify(dev,&nkn); } }