Commit 75987a76 authored by Mike Gabriel's avatar Mike Gabriel

Add 302_nx-X11_xkbbasedir-detection.patch. For detecting XkbBaseDir test for…

Add 302_nx-X11_xkbbasedir-detection.patch. For detecting XkbBaseDir test for xkb/rules/base instead of testing for deprecated file xkb/keymap.dir. (Fixes: #40).
parent e30d46d8
......@@ -12,6 +12,9 @@ nx-libs (2:3.5.0.25-0x2go1) UNRELEASED; urgency=low
* Add 028_nx-X11_abstract-kernel-sockets.full.patch. Provide abstract local
socket support for Linux based systems. This patch pulls in abstract
socket relevant code from xtrans 1.2.7. (Fixes: #504).
* Add 302_nx-X11_xkbbasedir-detection.patch. For detecting XkbBaseDir
test for xkb/rules/base instead of testing for deprecated file
xkb/keymap.dir. (Fixes: #40).
-- Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Wed, 07 May 2014 09:58:10 +0200
......
Description: Test for xkb/rules/base instead of xkb/keymap.dir for setting XkbBaseDir
Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
Abstract:
In recent (as of 2014/06) X.org release, the keymap.dir file
has become obsolete. Let's test for the xkb/rules/base file
instead.
--- a/nx-X11/programs/Xserver/xkb/ddxLoad.c
+++ b/nx-X11/programs/Xserver/xkb/ddxLoad.c
@@ -180,7 +180,7 @@
#define NX_XKB_BASE_DIRECTORY "/usr/lib/X11/xkb"
#define NX_XKB_ALTERNATE_BASE_DIRECTORY "/usr/share/X11/xkb"
-#define NX_KEYMAP_DIR_FILE "keymap.dir"
+#define NX_XKB_RULES_BASE_FILE "rules/base"
#define NX_ALT_XKBCOMP_PATH "/usr/bin"
static char _NXXkbBasePath[PATH_MAX];
@@ -189,43 +189,43 @@
static int NXVerifyXkbBaseDirectory(const char *dirPath)
{
int size;
- char *keymapDirFilePath;
- struct stat keymapDirFileStat;
+ char *rulesBaseFilePath;
+ struct stat rulesBaseFileStat;
/*
- * If keymap.dir file
- * is not present into
- * Xkb Base Directory,
+ * If rules/base file
+ * is not present inside
+ * the Xkb Base Directory,
* we suppose that the
* path is not valid.
*/
size = strlen(dirPath) + strlen("/") +
- strlen(NX_KEYMAP_DIR_FILE) + 1;
+ strlen(NX_XKB_RULES_BASE_FILE) + 1;
- if ((keymapDirFilePath = malloc((size + 1) * sizeof(char))) == NULL)
+ if ((rulesBaseFilePath = malloc((size + 1) * sizeof(char))) == NULL)
{
FatalError("NXVerifyXkbBaseDirectory: malloc failed.\n");
}
- strcpy(keymapDirFilePath, dirPath);
- strcat(keymapDirFilePath, "/");
- strcat(keymapDirFilePath, NX_KEYMAP_DIR_FILE);
+ strcpy(rulesBaseFilePath, dirPath);
+ strcat(rulesBaseFilePath, "/");
+ strcat(rulesBaseFilePath, NX_XKB_RULES_BASE_FILE);
#ifdef TEST
fprintf(stderr, "NXVerifyXkbBaseDirectory: Looking for [%s] file.\n",
- keymapDirFilePath);
+ rulesBaseFilePath);
#endif
- if (stat(keymapDirFilePath, &keymapDirFileStat) != 0)
+ if (stat(rulesBaseFilePath, &rulesBaseFileStat) != 0)
{
#ifdef TEST
fprintf(stderr, "NXVerifyXkbBaseDirectory: Can't find the keymap.dir file [%s].\n",
- keymapDirFilePath);
+ rulesBaseFilePath);
#endif
- free(keymapDirFilePath);
+ free(rulesBaseFilePath);
return 0;
}
@@ -235,7 +235,7 @@
dirPath);
#endif
- free(keymapDirFilePath);
+ free(rulesBaseFilePath);
return 1;
}
......@@ -50,6 +50,7 @@
220_nxproxy-bind-loopback-only.full+lite.patch
300_nxagent_set-wm-class.full.patch
301_nx-X11_use-shared-libs.full.patch
302_nx-X11_xkbbasedir-detection.patch
320_nxagent_configurable-keystrokes.full.patch
600_nx-X11+nxcompext+nxcompshad_unique-libnames.full.patch
601_nx-X11_build-option-changes-to-not-use-bundled-libraries.full.patch
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment