File U_0002-Fix-crash-on-XkbSetMap.patch of Package xorg-x11-server.28109

From 8469bfead9515ab3644f1769a1ff51466ba8ffee Mon Sep 17 00:00:00 2001
From: Samuel Thibault <samuel.thibault@ens-lyon.org>
Date: Mon, 1 Jul 2019 02:31:02 +0200
Subject: [PATCH 02/12] Fix crash on XkbSetMap

Some devices may not have keyboard information.

Fixes #574
---
 xkb/xkb.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/xkb/xkb.c b/xkb/xkb.c
index 764079506..9bd45a34a 100644
--- a/xkb/xkb.c
+++ b/xkb/xkb.c
@@ -2383,6 +2383,9 @@ _XkbSetMapChecks(ClientPtr client, DeviceIntPtr dev, xkbSetMapReq * req,
     XkbSymMapPtr map;
     int i;
 
+    if (!dev->key)
+        return 0;
+
     xkbi = dev->key->xkbInfo;
     xkb = xkbi->desc;
 
@@ -2495,6 +2498,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;
 
-- 
2.34.1

openSUSE Build Service is sponsored by