xserver: Branch 'input-hotplug'

Daniel Stone daniels at kemper.freedesktop.org
Fri Jul 21 16:02:58 PDT 2006


 hw/kdrive/ephyr/ephyr.c |   25 +++++++++++--------------
 1 files changed, 11 insertions(+), 14 deletions(-)

New commits:
diff-tree 1d31ed778284082e1060bff63317c94581d9eb9b (from 3eeb62e8f587732e6b433c2b9c6879eb26a3f1b4)
Author: Daniel Stone <daniel at fooishbar.org>
Date:   Fri Jul 21 19:02:52 2006 -0400

    xephyr: load keysyms at init, not enable
    Load keysyms at init time, not enable, so we don't get the wrong map width.

diff --git a/hw/kdrive/ephyr/ephyr.c b/hw/kdrive/ephyr/ephyr.c
index 6a337bc..86a072d 100644
--- a/hw/kdrive/ephyr/ephyr.c
+++ b/hw/kdrive/ephyr/ephyr.c
@@ -907,9 +907,17 @@ EphyrKeyboardInit (KdKeyboardInfo *ki)
 {
   ki->driverPrivate = (EphyrKbdPrivate *)
                        xcalloc(sizeof(EphyrKbdPrivate), 1);
-  /* FIXME blah blah overrunning memory blah blah */
-  ki->minScanCode = ki->keySyms.minKeyCode = 0;
-  ki->maxScanCode = ki->keySyms.maxKeyCode = 255;
+  hostx_load_keymap();
+  if (!ephyrKeySyms.map) {
+      ErrorF("Couldn't load keymap from host\n");
+      return BadAlloc;
+  }
+  ki->keySyms.minKeyCode = ephyrKeySyms.minKeyCode;
+  ki->keySyms.maxKeyCode = ephyrKeySyms.maxKeyCode;
+  ki->minScanCode = ki->keySyms.minKeyCode;
+  ki->maxScanCode = ki->keySyms.maxKeyCode;
+  ki->keySyms.mapWidth = ephyrKeySyms.mapWidth;
+  ki->keySyms.map = ephyrKeySyms.map;
   ephyrKbd = ki;
   return Success;
 }
@@ -917,17 +925,6 @@ EphyrKeyboardInit (KdKeyboardInfo *ki)
 static Status
 EphyrKeyboardEnable (KdKeyboardInfo *ki)
 {
-    hostx_load_keymap();
-    if (!ephyrKeySyms.map) {
-        ErrorF("Couldn't load keymap from host\n");
-        return BadAlloc;
-    }
-    ki->keySyms.minKeyCode = ephyrKeySyms.minKeyCode;
-    ki->keySyms.maxKeyCode = ephyrKeySyms.maxKeyCode;
-    ki->minScanCode = ki->keySyms.minKeyCode;
-    ki->maxScanCode = ki->keySyms.maxKeyCode;
-    ki->keySyms.mapWidth = ephyrKeySyms.mapWidth;
-    ki->keySyms.map = ephyrKeySyms.map;
     ((EphyrKbdPrivate *)ki->driverPrivate)->enabled = TRUE;
 
     return Success;



More information about the xorg-commit mailing list