From: Junio C Hamano Date: Mon, 10 Nov 2025 18:33:14 GMT Subject: Re: [PATCH 07/12] diff: update the way rewrite diff handles incomplete lines Message-ID: In-Reply-To: <0b0181af-e63d-4e5a-9e3c-822f866df88d@gmail.com> Phillip Wood writes: >> endp = memchr(data, '\n', size); >> len = endp ? (endp - data + 1) : size; >> + plen = len; >> + >> + if (!endp) { >> + plen = len + 1; >> + pdata = xmalloc(plen + 2); >> + memcpy(pdata, data, len); >> + pdata[len] = '\n'; >> + pdata[len + 1] = '\0'; >> + } > > I think it would be clearer to refactor this as > > endp = memchr(data, '\n', size); > - len = endp ? (endp - data + 1) : size; > if (endp) { > len = endp - data + 1; > plen = len; > } else { > len = size; > + plen = len + 1; > + pdata = xmalloc(plen + 2); > + memcpy(pdata, data, len); > + pdata[len] = '\n'; > + pdata[len + 1] = '\0'; > + } Perhaps. I'll try and see if I agree. Thanks.