From 83fa3ba427203f1a044bb544a907c764d3f0d2e2 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Fri, 17 Apr 2026 15:10:41 +1000 Subject: [PATCH] xkb: fail if we can't strdup our default rules If we fail to set up the default rules our keymap is likely going to end up messed up, which means the client/user can't work correctly anyway. And if we're that low on memory that we can't allocate these rules, we're about to fall over anyway so why bother. Co-Authored-by: Claude Code Part-of: Signed-off-by: Enrico Weigelt, metux IT consult --- xkb/xkbInit.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/xkb/xkbInit.c b/xkb/xkbInit.c index e3128023a..fdb2def68 100644 --- a/xkb/xkbInit.c +++ b/xkb/xkbInit.c @@ -110,11 +110,11 @@ static Bool XkbWantRulesProp = XKB_DFLT_RULES_PROP; void XkbGetRulesDflts(XkbRMLVOSet * rmlvo) { - rmlvo->rules = strdup(XkbRulesDflt ? XkbRulesDflt : XKB_DFLT_RULES); - rmlvo->model = strdup(XkbModelDflt ? XkbModelDflt : XKB_DFLT_MODEL); - rmlvo->layout = strdup(XkbLayoutDflt ? XkbLayoutDflt : XKB_DFLT_LAYOUT); - rmlvo->variant = strdup(XkbVariantDflt ? XkbVariantDflt : XKB_DFLT_VARIANT); - rmlvo->options = strdup(XkbOptionsDflt ? XkbOptionsDflt : XKB_DFLT_OPTIONS); + rmlvo->rules = XNFstrdup(XkbRulesDflt ? XkbRulesDflt : XKB_DFLT_RULES); + rmlvo->model = XNFstrdup(XkbModelDflt ? XkbModelDflt : XKB_DFLT_MODEL); + rmlvo->layout = XNFstrdup(XkbLayoutDflt ? XkbLayoutDflt : XKB_DFLT_LAYOUT); + rmlvo->variant = XNFstrdup(XkbVariantDflt ? XkbVariantDflt : XKB_DFLT_VARIANT); + rmlvo->options = XNFstrdup(XkbOptionsDflt ? XkbOptionsDflt : XKB_DFLT_OPTIONS); } void