From 823c8d442e825c7e260a29e132893e03d6108f61 Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Tue, 28 Jan 2025 15:15:10 +0200 Subject: [PATCH] config: Don't add redundant named filter to doveconf output For example: userdb ldap { iterate_fields { This was output as: userdb ldap { userdb_ldap { iterate_fields { --- src/config/config-parser.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/config/config-parser.c b/src/config/config-parser.c index 9a9af4ed2b..b7a49558ec 100644 --- a/src/config/config-parser.c +++ b/src/config/config-parser.c @@ -848,11 +848,15 @@ static bool replace_filter_prefix(struct config_parser_context *ctx, const char *cur_filter_name = ctx->cur_section->filter_parser->filter.filter_name; + if (cur_filter_name != NULL) + cur_filter_name = t_str_replace(cur_filter_name, '/', '_'); if (cur_filter_name != NULL && strncmp(filter_name_prefix, cur_filter_name, filter_name_prefix_len - 1) == 0 && cur_filter_name[filter_name_prefix_len-1] == '\0') { - /* already inside the correct filter */ + /* already inside the correct filter, e.g. + userdb ldap { iterate_fields doesn't need + userdb_ldap { named filter in the middle. */ return FALSE; } -- 2.47.3