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

Re: [PATCH] sparse-checkout: use fdopen_lock_file() instead of xfdopen()

From
Junio C Hamano <gitster@pobox.com>
Date
Sep 6, 2024, 14:55 UTC
Message-ID
<xmqq1q1wzvaq.fsf@gitster.g>
In-Reply-To
<20240906011935.GA2616101@coredump.intra.peff.net>
Jeff King <peff@peff.net> writes:
Show 17 quoted lines
>>  	fp = fdopen_lock_file(&lk, "w");
>>  	if (!fp)
>> -		die_errno(_("unable to fdopen %s"), get_lock_file_path(&lk));
>> +		die_errno(_("unable to fdopen %s"), sparse_filename);
>>  
>>  	if (core_sparse_checkout_cone)
>>  		write_cone_to_file(fp, pl);
>> @@ -356,11 +355,13 @@ static int write_patterns_and_update(struct pattern_list *pl)
>>  		write_patterns_to_file(fp, pl);
>>  
>>  	if (commit_lock_file(&lk))
>> -		die_errno(_("unable to write %s"), get_locked_file_path(&lk));
>> +		die_errno(_("unable to write %s"), sparse_filename);
>
> Note the difference between "get_lock" and "get_locked" in these two.
> The first will mention the tempfile name, and the second the destination
> filename (and sparse_filename is the latter).

I did consider ... to write %s.%s", sparse_filename, LOCK_SUFFIX) but then thought that the final name is what is more relevant to the end user. Yes, while correcting unrelated error, I shouldn't have tried to improve unrelated end-user experience ;-).

> Will send v2 later tonight. Thanks, Patrick, for noticing the problem in
> the first place.
Yeah, thanks, both.
Previous: Jeff KingNext: Junio C Hamano
Message 6 of 12 in “sparse-checkout: use fdopen_lock_file() instead of xfdopen()”
  1. sparse-checkout: use fdopen_lock_file() instead of xfdopen()Jeff King, Sep 5, 2024
  2. Patrick SteinhardtSep 5, 2024
  3. Junio C HamanoSep 5, 2024
  4. Junio C HamanoSep 5, 2024
  5. Jeff KingSep 6, 2024
  6. Junio C HamanoSep 6, 2024
  7. Junio C HamanoSep 5, 2024
  8. 0/3 sparse-checkout file handle leak fixJeff King, Sep 6, 2024
  9. 1/3 sparse-checkout: consolidate cleanup when writing patternsJeff King, Sep 6, 2024
  10. 2/3 sparse-checkout: check commit_lock_file when writing patternsJeff King, Sep 6, 2024
  11. 3/3 sparse-checkout: use fdopen_lock_file() instead of xfdopen()Jeff King, Sep 6, 2024
  12. Patrick SteinhardtSep 6, 2024

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.