summaryrefslogtreecommitdiff
path: root/xkb/xkbInit.c
diff options
context:
space:
mode:
authorPeter Hutterer <peter@cs.unisa.edu.au>2008-06-04 11:10:11 +0930
committerPeter Hutterer <peter@cs.unisa.edu.au>2008-06-05 08:53:34 +0930
commitff3adf3e564d94fea18e48f966de40a7ded1279e (patch)
treecd0190fa4e9fa69d27ba972531ea0ad5ac50d43b /xkb/xkbInit.c
parent40855d8000b9b9f4e6c6b4317542378ecf516345 (diff)
xkb: reset xkb_cached_map on CloseDownDevices.
Could lead to some invalid pointers in the second server generation.
Diffstat (limited to 'xkb/xkbInit.c')
-rw-r--r--xkb/xkbInit.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/xkb/xkbInit.c b/xkb/xkbInit.c
index 47ad55369..0aaa037cb 100644
--- a/xkb/xkbInit.c
+++ b/xkb/xkbInit.c
@@ -292,6 +292,9 @@ XkbDeleteRulesDflts()
XkbVariantDflt = NULL;
_XkbFree(XkbOptionsDflt);
XkbOptionsDflt = NULL;
+
+ XkbFreeKeyboard(xkb_cached_map, XkbAllComponentsMask, True);
+ xkb_cached_map = NULL;
}
/***====================================================================***/