We only have one set of default rules options in xkb. When the second keyboard is brought up with Xkb options specified, these new options overwrite the old. In future server generations, the rules used for the VCK are a mixture of the default ones and ones previously specified for other keyboards. Simply resetting the xkb default rules to NULL avoids this issue. Reproducable by setting XkbLayout "de" and XkbVariant "nodeadkeys". In the second server generation, the VCK has "us(nodeadkeys)". This again produces a SIGABRT when the first key is hit. I could not figure out why the SIGABRT happens. This patch is avoiding the issue rather than fixing it. |
||
---|---|---|
.. | ||
ddxBeep.c | ||
ddxCtrls.c | ||
ddxDevBtn.c | ||
ddxFakeBtn.c | ||
ddxFakeMtn.c | ||
ddxInit.c | ||
ddxKeyClick.c | ||
ddxKillSrv.c | ||
ddxLEDs.c | ||
ddxList.c | ||
ddxLoad.c | ||
ddxPrivate.c | ||
ddxVT.c | ||
Makefile.am | ||
maprules.c | ||
README.compiled | ||
xkb.c | ||
xkb.h | ||
xkbAccessX.c | ||
xkbActions.c | ||
XKBAlloc.c | ||
xkbDflts.h | ||
xkbEvents.c | ||
xkbfmisc.c | ||
XKBGAlloc.c | ||
xkbgeom.h | ||
xkbInit.c | ||
xkbLEDs.c | ||
XKBMAlloc.c | ||
XKBMisc.c | ||
xkbout.c | ||
xkbPrKeyEv.c | ||
xkbPrOtherEv.c | ||
xkbSwap.c | ||
xkbtext.c | ||
xkbUtils.c | ||
xkmread.c |
The X server uses this directory to store the compiled version of the current keymap and/or any scratch keymaps used by clients. The X server or some other tool might destroy or replace the files in this directory, so it is not a safe place to store compiled keymaps for long periods of time. The default keymap for any server is usually stored in: X<num>-default.xkm where <num> is the display number of the server in question, which makes it possible for several servers *on the same host* to share the same directory. Unless the X server is modified, sharing this directory between servers on different hosts could cause problems.