Git fork

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 <gargaditya08@live.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

authored by

Aditya Garg and committed by
Junio C Hamano
44ba4b0b fcfe6066

+4 -4
+4 -4
imap-send.c
··· 1316 1316 FREE_AND_NULL(cfg->folder); 1317 1317 return git_config_string(&cfg->folder, var, val); 1318 1318 } else if (!strcmp("imap.user", var)) { 1319 - FREE_AND_NULL(cfg->folder); 1319 + FREE_AND_NULL(cfg->user); 1320 1320 return git_config_string(&cfg->user, var, val); 1321 1321 } else if (!strcmp("imap.pass", var)) { 1322 - FREE_AND_NULL(cfg->folder); 1322 + FREE_AND_NULL(cfg->pass); 1323 1323 return git_config_string(&cfg->pass, var, val); 1324 1324 } else if (!strcmp("imap.tunnel", var)) { 1325 - FREE_AND_NULL(cfg->folder); 1325 + FREE_AND_NULL(cfg->tunnel); 1326 1326 return git_config_string(&cfg->tunnel, var, val); 1327 1327 } else if (!strcmp("imap.authmethod", var)) { 1328 - FREE_AND_NULL(cfg->folder); 1328 + FREE_AND_NULL(cfg->auth_method); 1329 1329 return git_config_string(&cfg->auth_method, var, val); 1330 1330 } else if (!strcmp("imap.port", var)) { 1331 1331 cfg->port = git_config_int(var, val, ctx->kvi);