From b6ee04e774af1fc2e2560583c95dfac688494c2a Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Mon, 1 Jul 2019 02:31:02 +0200 Subject: [PATCH] Fix crash on XkbSetMap Some devices may not have keyboard information. Fixes #574 (cherry picked from commit 8469bfead9515ab3644f1769a1ff51466ba8ffee) --- xkb/xkb.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/xkb/xkb.c b/xkb/xkb.c index f09143050..3162574a4 100644 --- a/xkb/xkb.c +++ b/xkb/xkb.c @@ -2386,6 +2386,9 @@ _XkbSetMapChecks(ClientPtr client, DeviceIntPtr dev, xkbSetMapReq * req, XkbSymMapPtr map; int i; + if (!dev->key) + return 0; + xkbi = dev->key->xkbInfo; xkb = xkbi->desc; @@ -2498,6 +2501,9 @@ _XkbSetMap(ClientPtr client, DeviceIntPtr dev, xkbSetMapReq * req, char *values) XkbSrvInfoPtr xkbi; XkbDescPtr xkb; + if (!dev->key) + return Success; + xkbi = dev->key->xkbInfo; xkb = xkbi->desc;