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

Re: [PATCH v2 2/2] bisect: output bisect setup status in bisect log

From
Junio C Hamano <gitster@pobox.com>
Date
May 9, 2022, 16:08 UTC
Message-ID
<xmqqv8ueelip.fsf@gitster.g>
In-Reply-To
<Ynk2q1XVGsLPvALn@nand.local>
Taylor Blau <me@ttaylorr.com> writes:
Show 34 quoted lines
> On Fri, May 06, 2022 at 11:18:25AM -0700, Junio C Hamano wrote:
>> Chris Down <chris@chrisdown.name> writes:
>>
>> > +__attribute__((format (printf, 1, 2)))
>> > +static void bisect_log_printf(const char *fmt, ...)
>> > +{
>> > +	va_list ap;
>> > +	char buf[1024];
>> > +
>> > +	va_start(ap, fmt);
>> > +	if (vsnprintf(buf, sizeof(buf), fmt, ap) < 0)
>> > +		*buf = '\0';
>> > +	va_end(ap);
>>
>> We should just do
>>
>> 	struct strbuf buf = STRBUF_INIT;
>>
>> 	va_start(ap, fmt);
>> 	strbuf_vaddf(&buf, fmt, ap);
>> 	va_end(ap);
>>
>> > +	printf("%s", buf);
>> > +	append_to_file(git_path_bisect_log(), "# %s", buf);
>>
>> and free the resource with
>>
>> 	strbuf_release(&buf);
>>
>> I think.
>
> I don't think so. bisect_log_printf() has only one caller, which is
> bisect_print_status(). Couldn't the latter manage its own strbuf without
> the need to introduce a new varargs function?

I actually was hoping that other existing informational messages prefixed with "Bisecting:" (i.e. those that tells you how many steps are remaining) can go as similar comments to the log file; they are currently written with plain-vanilla printf(3), and could use this one instead.

Previous: Taylor BlauNext: Taylor Blau
Message 15 of 19 in “bisect: status improvements when bisect is not fully fleshed out”
  1. 0/2 bisect: status improvements when bisect is not fully fleshed outChris Down, May 6, 2022
  2. 1/2 bisect: output state before we are ready to compute bisectionChris Down, May 6, 2022
  3. Taylor BlauMay 6, 2022
  4. Chris DownMay 6, 2022
  5. Junio C HamanoMay 6, 2022
  6. Junio C HamanoMay 6, 2022
  7. 2/2 bisect: output bisect setup status in bisect logChris Down, May 6, 2022
  8. Taylor BlauMay 6, 2022
  9. Chris DownMay 6, 2022
  10. Taylor BlauMay 9, 2022
  11. Junio C HamanoMay 6, 2022
  12. Junio C HamanoMay 6, 2022
  13. Junio C HamanoMay 6, 2022
  14. Taylor BlauMay 9, 2022
  15. Junio C HamanoMay 9, 2022
  16. Taylor BlauMay 9, 2022
  17. Chris DownMay 7, 2022
  18. Junio C HamanoMay 7, 2022
  19. Chris DownMay 7, 2022

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.