From eeca04741d44b0943ed4ea7c2f756d4d487ac46c Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Thu, 18 Sep 2025 15:34:09 +0200 Subject: [PATCH] conf: fix parse_array_def - merge arrays A tiny overlook caused wrong array merge. New compound member must be always created. Signed-off-by: Jaroslav Kysela --- src/conf.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/conf.c b/src/conf.c index 4dfa9cc5..b9417a8a 100644 --- a/src/conf.c +++ b/src/conf.c @@ -1274,7 +1274,7 @@ static int parse_array_def(snd_config_t *parent, input_t *input, int *idx, int s if (_snd_config_search(parent, static_id, -1, &n) == 0) { if (override) { snd_config_delete(n); - n = NULL; + /* fallthrough to break */ } else { /* merge */ (*idx)++; @@ -1283,6 +1283,7 @@ static int parse_array_def(snd_config_t *parent, input_t *input, int *idx, int s } break; } + n = NULL; id = strdup(static_id); if (id == NULL) return -ENOMEM;