[arch-commits] Commit in xorg-xkbcomp/trunk (2 files)
Andreas Radke
andyrtr at archlinux.org
Thu Jun 7 17:01:18 UTC 2018
Date: Thursday, June 7, 2018 @ 17:01:18
Author: andyrtr
Revision: 326435
upgpkg: xorg-xkbcomp 1.4.1-2
fix keyboard layout with xkeyboard-config 2.24 - FS58908
Added:
xorg-xkbcomp/trunk/0001-Ignore-xkb_keycodes.maximum-of-255.patch
Modified:
xorg-xkbcomp/trunk/PKGBUILD
-----------------------------------------------+
0001-Ignore-xkb_keycodes.maximum-of-255.patch | 51 ++++++++++++++++++++++++
PKGBUILD | 14 +++++-
2 files changed, 62 insertions(+), 3 deletions(-)
Added: 0001-Ignore-xkb_keycodes.maximum-of-255.patch
===================================================================
--- 0001-Ignore-xkb_keycodes.maximum-of-255.patch (rev 0)
+++ 0001-Ignore-xkb_keycodes.maximum-of-255.patch 2018-06-07 17:01:18 UTC (rev 326435)
@@ -0,0 +1,51 @@
+From 52195d453cae1369a90b4fd08793df9bb0869192 Mon Sep 17 00:00:00 2001
+From: Peter Hutterer <peter.hutterer at who-t.net>
+Date: Thu, 7 Jun 2018 11:25:01 +1000
+Subject: [PATCH xkbcomp] Ignore xkb_keycodes.maximum of > 255
+
+Continuation from 7fdfabd75 "keycodes: Ignore high keycodes"
+
+A keymap with a key > 255 will have a xkb_keycodes.maximum of that keycode.
+Let's not throw a fatal error on that, just crop it back to the maximum of
+255. This doesn't set the "high_keycode_warned" on purpose so we get this for
+the first key that actually matters.
+
+Reproducible with xkeyboard-config 2.24 which has a maximum of 374.
+
+Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
+---
+ keycodes.c | 10 +++++++++-
+ 1 file changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/keycodes.c b/keycodes.c
+index d5ac762..c21f7c4 100644
+--- a/keycodes.c
++++ b/keycodes.c
+@@ -663,7 +663,7 @@ HandleKeyNameVar(VarDef * stmt, KeyNamesInfo * info)
+ ACTION1("Assignment to field %s ignored\n", field.str);
+ return 0;
+ }
+- if ((tmp.ival < XkbMinLegalKeyCode) || (tmp.ival > XkbMaxLegalKeyCode))
++ if ((tmp.ival < XkbMinLegalKeyCode))
+ {
+ ERROR3
+ ("Illegal keycode %d (must be in the range %d-%d inclusive)\n",
+@@ -671,6 +671,14 @@ HandleKeyNameVar(VarDef * stmt, KeyNamesInfo * info)
+ ACTION1("Value of \"%s\" not changed\n", field.str);
+ return 0;
+ }
++ if ((tmp.ival > XkbMaxLegalKeyCode))
++ {
++ WARN2("Unsupported maximum keycode %d, clipping.\n", tmp.ival);
++ ACTION2("X11 cannot support keycodes above 255.\n");
++ info->explicitMax = XkbMaxLegalKeyCode;
++ info->effectiveMax = XkbMaxLegalKeyCode;
++ return 1;
++ }
+ if (which == MIN_KEYCODE_DEF)
+ {
+ if ((info->explicitMax > 0) && (info->explicitMax < tmp.ival))
+--
+2.14.4
+
+
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2018-06-07 16:45:23 UTC (rev 326434)
+++ PKGBUILD 2018-06-07 17:01:18 UTC (rev 326435)
@@ -4,7 +4,7 @@
pkgname=xorg-xkbcomp
pkgver=1.4.1
-pkgrel=1
+pkgrel=2
pkgdesc="X Keyboard description compiler"
arch=(x86_64)
url="https://xorg.freedesktop.org/"
@@ -12,13 +12,21 @@
depends=('libxkbfile')
makedepends=('xorg-util-macros')
groups=('xorg-apps' 'xorg')
-source=(${url}/releases/individual/app/xkbcomp-${pkgver}.tar.bz2{,.sig})
+source=(${url}/releases/individual/app/xkbcomp-${pkgver}.tar.bz2{,.sig}
+ 0001-Ignore-xkb_keycodes.maximum-of-255.patch)
sha512sums=('443397e112f67e2ebc5150ec0dbf0f4a072ea39585d964d2c7cbd0569b7e0ce7d8bed0bc2c2d886343fdb060c941e65b42aac16adf189c66e90849029e278f23'
- 'SKIP')
+ 'SKIP'
+ '4005d187a3d585fd4165254c2a4a17cd381d9cf04dfef649de47ecb26dfbe1442e42b1c87e4aa9a3d7f45054393a5371299167a8c089d50e981a74b764e7353c')
validpgpkeys=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # Peter Hutterer (Who-T) <office at who-t.net>
validpgpkeys+=('A66D805F7C9329B4C5D82767CCC4F07FAC641EFF') # "Daniel Stone <daniels at collabora.com>"
validpgpkeys+=('DD38563A8A8224537D1F90E45B8A2D50A0ECD0D3') # "Adam Jackson <ajax at benzedrine.nwnk.net>"
+prepare() {
+ cd xkbcomp-${pkgver}
+ # FS58908; https://bugzilla.redhat.com/show_bug.cgi?id=1587998
+ patch -Np1 -i ../0001-Ignore-xkb_keycodes.maximum-of-255.patch
+}
+
build() {
cd xkbcomp-${pkgver}
./configure --prefix=/usr
More information about the arch-commits
mailing list