summaryrefslogtreecommitdiff
path: root/xkb/XKBAlloc.c
diff options
context:
space:
mode:
Diffstat (limited to 'xkb/XKBAlloc.c')
-rw-r--r--xkb/XKBAlloc.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/xkb/XKBAlloc.c b/xkb/XKBAlloc.c
index 8356e47e7..c474733d0 100644
--- a/xkb/XKBAlloc.c
+++ b/xkb/XKBAlloc.c
@@ -324,8 +324,11 @@ XkbFreeKeyboard(XkbDescPtr xkb,unsigned which,Bool freeAll)
XkbFreeIndicatorMaps(xkb);
if (which&XkbNamesMask)
XkbFreeNames(xkb,XkbAllNamesMask,True);
- if ((which&XkbGeometryMask) && (xkb->geom!=NULL))
+ if ((which&XkbGeometryMask) && (xkb->geom!=NULL)) {
XkbFreeGeometry(xkb->geom,XkbGeomAllMask,True);
+ /* PERHAPS BONGHITS etc */
+ xkb->geom = NULL;
+ }
if (which&XkbControlsMask)
XkbFreeControls(xkb,XkbAllControlsMask,True);
if (freeAll)