From: Mirko Faina Date: Mon, 23 Mar 2026 16:57:33 +0000 (+0100) Subject: format-patch: wrap generate_commit_list_cover() X-Git-Tag: v2.54.0-rc1~36^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=617db87921e835f02ac132e86d0f7edc0d72915e;p=thirdparty%2Fgit.git format-patch: wrap generate_commit_list_cover() While most conventions should not allow for the text lines in commit messages to get too long, when they do it could make emails harder to read. Teach generate_commit_list_cover() to wrap its commit lines if they are too long. Signed-off-by: Mirko Faina Signed-off-by: Junio C Hamano --- diff --git a/builtin/log.c b/builtin/log.c index 47126f9064..d1765ce4ad 100644 --- a/builtin/log.c +++ b/builtin/log.c @@ -40,6 +40,7 @@ #include "progress.h" #include "commit-slab.h" #include "advice.h" +#include "utf8.h" #include "commit-reach.h" #include "range-diff.h" @@ -1364,6 +1365,7 @@ static void generate_commit_list_cover(FILE *cover_file, const char *format, struct commit **list, int n) { struct strbuf commit_line = STRBUF_INIT; + struct strbuf wrapped_line = STRBUF_INIT; struct pretty_print_context ctx = {0}; struct rev_info rev = REV_INFO_INIT; @@ -1373,12 +1375,16 @@ static void generate_commit_list_cover(FILE *cover_file, const char *format, rev.nr = i; repo_format_commit_message(the_repository, list[n - i], format, &commit_line, &ctx); - fprintf(cover_file, "%s\n", commit_line.buf); + strbuf_add_wrapped_text(&wrapped_line, commit_line.buf, 0, 0, + MAIL_DEFAULT_WRAP); + fprintf(cover_file, "%s\n", wrapped_line.buf); strbuf_reset(&commit_line); + strbuf_reset(&wrapped_line); } fprintf(cover_file, "\n"); strbuf_release(&commit_line); + strbuf_release(&wrapped_line); } static void make_cover_letter(struct rev_info *rev, int use_separate_file,