From 541427761292ac75f2bca2200aacf5aab329729e Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Wed, 4 Feb 2026 18:43:57 +0100 Subject: [PATCH] ucm: fix invalid pointer dereference in parse_open_variables() When the string with variables is not parseable, do not try to free invalid cfg pointer. Signed-off-by: Jaroslav Kysela --- src/ucm/main.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/ucm/main.c b/src/ucm/main.c index 21a39a34..26b0ea20 100644 --- a/src/ucm/main.c +++ b/src/ucm/main.c @@ -1702,7 +1702,7 @@ const char *parse_open_variables(snd_use_case_mgr_t *uc_mgr, const char *name) { const char *end, *id; char *args, *var; - snd_config_t *cfg, *n; + snd_config_t *cfg = NULL, *n; snd_config_iterator_t i, next; char vname[128]; size_t l; @@ -1739,7 +1739,8 @@ const char *parse_open_variables(snd_use_case_mgr_t *uc_mgr, const char *name) } skip: - snd_config_delete(cfg); + if (cfg) + snd_config_delete(cfg); return end + 3; }