From 18202a5255f1be160d55c7b3e2a96b982ab8918b Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Sun, 17 Mar 2024 23:15:21 +0200 Subject: [PATCH] lib-settings: Ignore duplicate named list filter entries These can happen when some filters override settings for existing named list filters. --- src/lib-settings/settings-parser.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/lib-settings/settings-parser.c b/src/lib-settings/settings-parser.c index 64d813c1e2..b8a6b5acd7 100644 --- a/src/lib-settings/settings-parser.c +++ b/src/lib-settings/settings-parser.c @@ -698,6 +698,8 @@ settings_parse(struct setting_parser_context *ctx, for (i = 0; i < count; i++) { const char *value = p_strdup(ctx->set_pool, settings_section_unescape(list[i])); + if (array_lsearch(arr, &value, i_strcmp_p) != NULL) + continue; /* ignore duplicates */ if ((ctx->flags & SETTINGS_PARSER_FLAG_INSERT_FILTERS) != 0) array_insert(arr, insert_pos++, &value, 1); else -- 2.47.3