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.