loadkeys reports "killkey called with bad index"
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
kbd (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: kbd
On Ubuntu 9.04 using kbd 1.14.1-4ubuntu4 I used showkey (with no options) to find the keycode for a couple of keys on my Acer Aspire 8930G notebook that had been reporting no evens in X (xev). showkey reported 435 and 434 as the keycodes. I created a keymap like:
keymaps 0-63
# map Euro key to Home
keycode 435 = Home
# map $ key to End
keycode 434 = End
and processed it with loadkeys from the console, which reported:
killkey called with bad index 435
A quick search turned up the source for a version of loadkeys.c that shows:
http://
#define NR_KEYS 256
[...]
static void
killkey(int index, int table) {
/* roughly: addkey(index, table, K_HOLE); */
if (index < 0 || index >= NR_KEYS)
[...]
From what I can tell, 435 is in fact a keycode (and not one of the other things showkey can report), and is supposed to be a decimal number, so that leads me to wonder if NR_KEYS needed to be updated to reflect the current capabilities of the keyboad driver.
I'll try grabbing the proper source, increasing that limit (512?), and giving it a spin to see if it chokes elsewhere.