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

Re: [Outreachy PATCH v5 2/2] gpg-interface: do not use misdesigned strbuf_split*()

From
Junio C Hamano <gitster@pobox.com>
Date
Oct 22, 2025, 17:44 UTC
Message-ID
<xmqq4irqzv9y.fsf@gitster.g>
In-Reply-To
<CAP8UFD3OTMi6uxv+z4rTqJ4wVpmezSG2Yj8tZMpgptWaWU343w@mail.gmail.com>
Christian Couder <christian.couder@gmail.com> writes:
Show 17 quoted lines
>> @@ -887,19 +887,22 @@ static char *get_default_ssh_signing_key(void)
>>                            &key_stderr, 0);
>>
>>         if (!ret) {
>> -               keys = strbuf_split_max(&key_stdout, '\n', 2);
>> -               if (keys[0] && is_literal_ssh_key(keys[0]->buf, &literal_key)) {
>> +               begin = key_stdout.buf;
>> +               new_line = strchr(begin, '\n');
>> +               end = new_line ? new_line : strchr(begin, '\0');
>> +               first_line = xmemdupz(begin, end - begin);
>
> That works but I wonder if something like the following is not a bit better:
>
>                if (new_line)
>                        first_line = xmemdupz(begin, new_line - begin);
>                else
>                        first_line = xstrdup(begin);

Yeah, that is certainly much easier to understand without even reading and thinking.

Thanks.
Previous: Christian CouderNext: Bello Olamide
Message 20 of 26 in “do not use strbuf_split*()”
  1. 0/2 do not use strbuf_split*()Olamide Caleb Bello, Oct 20, 2025
  2. 1/2 gpg-interface: do not use misdesigned strbuf_split*()Olamide Caleb Bello, Oct 20, 2025
  3. Christian CouderOct 21, 2025
  4. Christian CouderOct 21, 2025
  5. Bello OlamideOct 21, 2025
  6. Junio C HamanoOct 21, 2025
  7. 2/2 gpg-interface: do not use misdesigned strbuf_split*() [Part 2]Olamide Caleb Bello, Oct 20, 2025
  8. Christian CouderOct 21, 2025
  9. Bello OlamideOct 21, 2025
  10. Christian CouderOct 21, 2025
  11. Bello OlamideOct 21, 2025
  12. Junio C HamanoOct 21, 2025
  13. Bello OlamideOct 22, 2025
  14. 0/2 do not use misdesigned strbuf_split*()Olamide Caleb Bello, Oct 22, 2025
  15. 1/2 gpg-interface: do not use misdesigned strbuf_split*()Olamide Caleb Bello, Oct 22, 2025
  16. Christian CouderOct 22, 2025
  17. Bello OlamideOct 23, 2025
  18. 2/2 gpg-interface: do not use misdesigned strbuf_split*()Olamide Caleb Bello, Oct 22, 2025
  19. Christian CouderOct 22, 2025
  20. Junio C HamanoOct 22, 2025
  21. Bello OlamideOct 23, 2025
  22. 0/2 do not use misdesigned strbuf_split*()Olamide Caleb Bello, Oct 23, 2025
  23. 1/2 gpg-interface: do not use misdesigned strbuf_split*()Olamide Caleb Bello, Oct 23, 2025
  24. 2/2 gpg-interface: do not use misdesigned strbuf_split*()Olamide Caleb Bello, Oct 23, 2025
  25. Junio C HamanoOct 23, 2025
  26. Christian CouderOct 24, 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.