From 24d174f9917cce804c9057061f7da0dbd3b88a24 Mon Sep 17 00:00:00 2001 From: Mirko Faina Date: Mon, 23 Mar 2026 17:57:32 +0100 Subject: [PATCH] format.commitListFormat: strip meaning from empty The configuration variable format.commitListFormat allows for an empty value. This is unusual and can create issues when interacting with this configuration variable through the CLI. Strip meaning to format.commitListFormat with an empty value. Signed-off-by: Mirko Faina Signed-off-by: Junio C Hamano --- builtin/log.c | 11 +---------- t/t4014-format-patch.sh | 11 ----------- 2 files changed, 1 insertion(+), 21 deletions(-) diff --git a/builtin/log.c b/builtin/log.c index a7f129d583..47126f9064 100644 --- a/builtin/log.c +++ b/builtin/log.c @@ -1055,17 +1055,8 @@ static int git_format_config(const char *var, const char *value, return 0; } if (!strcmp(var, "format.commitlistformat")) { - struct strbuf tmp = STRBUF_INIT; - strbuf_init(&tmp, 0); - if (value) - strbuf_addstr(&tmp, value); - else - strbuf_addstr(&tmp, "log:[%(count)/%(total)] %s"); - FREE_AND_NULL(cfg->fmt_cover_letter_commit_list); - git_config_string(&cfg->fmt_cover_letter_commit_list, var, tmp.buf); - strbuf_release(&tmp); - return 0; + return git_config_string(&cfg->fmt_cover_letter_commit_list, var, value); } if (!strcmp(var, "format.outputdirectory")) { FREE_AND_NULL(cfg->config_output_directory); diff --git a/t/t4014-format-patch.sh b/t/t4014-format-patch.sh index d2a775f78d..ca37f40a6a 100755 --- a/t/t4014-format-patch.sh +++ b/t/t4014-format-patch.sh @@ -451,17 +451,6 @@ test_expect_success 'cover letter config with count and author' ' test_line_count = 2 result ' -test_expect_success 'cover letter config commitlistformat set but no format' ' - test_when_finished "rm -rf patches result" && - test_when_finished "git config unset format.coverletter" && - test_when_finished "git config unset format.commitlistformat" && - git config set format.coverletter true && - printf "\tcommitlistformat" >> .git/config && - git format-patch -o patches HEAD~2 && - grep -E "^[[[:digit:]]+/[[:digit:]]+] .*" patches/0000-cover-letter.patch >result && - test_line_count = 2 result -' - test_expect_success 'cover letter config commitlistformat set to shortlog' ' test_when_finished "rm -rf patches result" && test_when_finished "git config unset format.coverletter" && -- 2.52.0