git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v6 1/4] interpret-trailers: factor out buffer-based processing to process_trailers()

From
Li Chen <me@linux.beauty>
Date
Nov 10, 2025, 19:29 UTC
Message-ID
<19a6f3e8332.46772ad5543363.4456434926857828677@linux.beauty>
In-Reply-To
<f5152523-f7ff-4dee-a685-fb0b74cd6a56@gmail.com>
Hi Phillip,
 ---- On Tue, 11 Nov 2025 00:27:38 +0800  Phillip Wood <phillip.wood123@gmail.com> wrote --- 
 > On 05/11/2025 16:57, Junio C Hamano wrote:
 > > Li Chen <me@linux.beauty> writes:
 > > 
 > >> From: Li Chen <chenl311@chinatelecom.cn>
 > >>
 > >> Extracted trailer processing into a helper that accumulates output in
 > >> a strbuf before writing.
 > >>
 > >> Updated interpret_trailers() to reuse the helper, buffer output, and
 > >> clean up both input and output buffers after writing.
 > > 
 > > Imperative?
 > > 
 > >>
 > >> Signed-off-by: Li Chen <chenl311@chinatelecom.cn>
 > >> ---
 > >>   builtin/interpret-trailers.c | 51 ++++++++++++++++++++----------------
 > >>   1 file changed, 29 insertions(+), 22 deletions(-)
 > >>
 > >> diff --git a/builtin/interpret-trailers.c b/builtin/interpret-trailers.c
 > >> index 41b0750e5a..4c90580fff 100644
 > >> --- a/builtin/interpret-trailers.c
 > >> +++ b/builtin/interpret-trailers.c
 > >> @@ -136,32 +136,21 @@ static void read_input_file(struct strbuf *sb, const char *file)
 > >>       strbuf_complete_line(sb);
 > >>   }
 > >>   
 > >> -static void interpret_trailers(const struct process_trailer_options *opts,
 > >> -                   struct list_head *new_trailer_head,
 > >> -                   const char *file)
 > >> +static void process_trailers(const struct process_trailer_options *opts,
 > >> +                 struct list_head *new_trailer_head,
 > >> +                 struct strbuf *sb, struct strbuf *out)
 > > 
 > > So we gained *out strbuf; in the preimage below I see fwrite(),
 > > fprintf(), etc. to outfile that is either stdout or tempfile, but
 > > presumably the output all will be captured in the strbuf instead,
 > > which makes sense.  It is a bit curious what the new paramater sb
 > > is, but this is a file-scope static helper, so it does not strictly
 > > require documenting.  Having a comment would still be nicer, though,
 > > unlike "struct process_trailer_options" that is very limited
 > > purpose, "strbuf" can be used for any string processing, so a good
 > > variable name like "out" that conveys what it is used for by
 > > implication is good, but "sb", which is obvious abbreviation for
 > > "Str Buf", conveys no useful information.
 > 
 > This patch is based on my suggestion[1]. I had intended to rename "sb" 
 > to "in" but forgot to do so before posting that diff. Here's my signoff 
 > which Li should add before their own
 > 
 > Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk>
I'm sorry that your signoff is missing; I will add it in the next version.
Regards,
Li​
Previous: Phillip WoodNext: Junio C Hamano
Message 5 of 24 in “rebase: support --trailer”
  1. 0/4 rebase: support --trailerLi Chen, Nov 5, 2025
  2. 1/4 interpret-trailers: factor out buffer-based processing to process_trailers()Li Chen, Nov 5, 2025
  3. Junio C HamanoNov 5, 2025
  4. Phillip WoodNov 10, 2025
  5. Li ChenNov 10, 2025
  6. Junio C HamanoNov 10, 2025
  7. Li ChenNov 10, 2025
  8. 2/4 trailer: move process_trailers to trailer.hLi Chen, Nov 5, 2025
  9. Junio C HamanoNov 5, 2025
  10. 3/4 trailer: append trailers in-process and drop the fork to `interpret-trailers`Li Chen, Nov 5, 2025
  11. Junio C HamanoNov 5, 2025
  12. Li ChenNov 10, 2025
  13. Phillip WoodNov 10, 2025
  14. Li ChenNov 10, 2025
  15. Li ChenFeb 24, 2026
  16. Phillip WoodNov 11, 2025
  17. 4/4 rebase: support --trailerLi Chen, Nov 5, 2025
  18. Phillip WoodNov 12, 2025
  19. Kristoffer HaugsbakkNov 24, 2025
  20. Junio C HamanoJan 20, 2026
  21. Junio C HamanoNov 5, 2025
  22. Li ChenNov 10, 2025
  23. Phillip WoodNov 12, 2025
  24. Li ChenNov 17, 2025

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.