From: Aditya Garg Date: Fri, 20 Jun 2025 06:40:24 +0000 (+0530) Subject: imap-send: fix bug causing cfg->folder being set to NULL X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=44ba4b0bbb1a342659ca93d9ba6f475fbf9cff99;p=thirdparty%2Fgit.git imap-send: fix bug causing cfg->folder being set to NULL 6d1f198f34 (imap-send: fix leaking memory in `imap_server_conf`, 2024-06-07) resulted a change in static int git_imap_config which resulted in cfg->folder being incorrectly set to NULL in case imap.user, imap.pass, imap.tunnel and imap.authmethod were defined. Because of this, since Git 2.46.0, git-imap-send is not usable at all. The bug seems to have been unnoticed for a long time, likely due to better options like git-send-email. Signed-off-by: Aditya Garg Signed-off-by: Junio C Hamano --- diff --git a/imap-send.c b/imap-send.c index 27dc033c7f..37f94a37e8 100644 --- a/imap-send.c +++ b/imap-send.c @@ -1316,16 +1316,16 @@ static int git_imap_config(const char *var, const char *val, FREE_AND_NULL(cfg->folder); return git_config_string(&cfg->folder, var, val); } else if (!strcmp("imap.user", var)) { - FREE_AND_NULL(cfg->folder); + FREE_AND_NULL(cfg->user); return git_config_string(&cfg->user, var, val); } else if (!strcmp("imap.pass", var)) { - FREE_AND_NULL(cfg->folder); + FREE_AND_NULL(cfg->pass); return git_config_string(&cfg->pass, var, val); } else if (!strcmp("imap.tunnel", var)) { - FREE_AND_NULL(cfg->folder); + FREE_AND_NULL(cfg->tunnel); return git_config_string(&cfg->tunnel, var, val); } else if (!strcmp("imap.authmethod", var)) { - FREE_AND_NULL(cfg->folder); + FREE_AND_NULL(cfg->auth_method); return git_config_string(&cfg->auth_method, var, val); } else if (!strcmp("imap.port", var)) { cfg->port = git_config_int(var, val, ctx->kvi);