diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2014-08-04 10:47:03 +1000 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2014-08-12 15:53:51 -0700 |
commit | 1e30fc1b99bda040038e4fd56d1b27c686b44c75 (patch) | |
tree | 05bd6968aac3b2f87021ea01386f0d86535fdf0d | |
parent | 4599a4492ca6a1c87cd9c537c54fbda11f13c15c (diff) |
xkb: ignore floating slave devices when updating from master (#81885)
Introduced in 45fb3a934dc0db51584aba37c2f9d73deff9191d. When a device is
enabled, the master's locked state is pushed to the slave. If the device is
floating, no master exists and we triggered a NULL-pointer dereference
in XkbPushLockedStateToSlaves.
X.Org Bug 81885 <http://bugs.freedesktop.org/show_bug.cgi?id=81885>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Keith Packard <keithp@keithp.com>
-rw-r--r-- | dix/devices.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/dix/devices.c b/dix/devices.c index 5d26fae21..f17a3ac65 100644 --- a/dix/devices.c +++ b/dix/devices.c @@ -416,7 +416,7 @@ EnableDevice(DeviceIntPtr dev, BOOL sendevent) XISendDeviceHierarchyEvent(flags); } - if (!IsMaster(dev)) + if (!IsMaster(dev) && !IsFloating(dev)) XkbPushLockedStateToSlaves(GetMaster(dev, MASTER_KEYBOARD), 0, 0); RecalculateMasterButtons(dev); |