From: Aki Tuomi Date: Mon, 4 Dec 2017 09:01:31 +0000 (+0200) Subject: pop3: Include mail user variables in logout format X-Git-Tag: 2.2.35~116 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e0a42caee5a04d29cfa95ae7719aeaa708001255;p=thirdparty%2Fdovecot%2Fcore.git pop3: Include mail user variables in logout format --- diff --git a/src/pop3/pop3-client.c b/src/pop3/pop3-client.c index 319dd0f890..05998c5184 100644 --- a/src/pop3/pop3-client.c +++ b/src/pop3/pop3-client.c @@ -540,22 +540,15 @@ static const char *client_stats(struct client *client) { 'd', !client->delete_success ? "0" : dec2str(client->deleted_size), "deleted_bytes" }, }; - ARRAY(struct var_expand_table) tab; const struct var_expand_table *user_tab = mail_user_var_expand_table(client->user); + const struct var_expand_table *tab = + t_var_expand_merge_tables(logout_tab, user_tab); string_t *str; - size_t n; - - t_array_init(&tab, 32); - array_append(&tab, logout_tab, N_ELEMENTS(logout_tab)); - /* count elements */ - for(n = 0; user_tab[n].long_key != NULL; n++) - ; - array_append(&tab, user_tab, n); - array_append_zero(&tab); str = t_str_new(128); - var_expand(str, client->set->pop3_logout_format, array_idx(&tab, 0)); + var_expand_with_funcs(str, client->set->pop3_logout_format, tab, + mail_user_var_expand_func_table, client->user); return str_c(str); }