Make temporary fix for stale xkb_atoms When xkb_free_keymap is called the atoms are all free'd, but action.c keeps a global copy of interned "true" and "false", which remains stale. The correct fix is to remove the need for the ActionsInit function entirely. Signed-off-by: Ran Benita <ran234@gmail.com>
diff --git a/src/xkbcomp/action.c b/src/xkbcomp/action.c
index eca1d6d..7160ebf 100644
--- a/src/xkbcomp/action.c
+++ b/src/xkbcomp/action.c
@@ -1183,11 +1183,13 @@ HandleActionDef(ExprDef * def,
if ((arg->op == OpNot) || (arg->op == OpInvert))
{
field = arg->value.child;
+ constFalse.value.str = xkb_intern_atom("false");
value = &constFalse;
}
else
{
field = arg;
+ constTrue.value.str = xkb_intern_atom("true");
value = &constTrue;
}
}