Re: [PATCH 2/4] xdiff-interface.c: always trim trailing space from xfuncname matches
- From
Jeff King <peff@peff.net>
- Date
- Sep 9, 2010, 19:35 UTC
- Message-ID
- <20100909193528.GA1092@sigill.intra.peff.net>
- In-Reply-To
- <GLdpD2WwjdTYfjYpj9FXho_K_YzeaiL1jdGACbdsXplUz5EPC0X3vA@cipher.nrlssc.navy.mil>
On Thu, Sep 09, 2010 at 02:33:15PM -0500, Brandon Casey wrote:
Show 26 quoted lines
> On 09/09/2010 02:21 PM, Jeff King wrote: > > On Thu, Sep 09, 2010 at 02:02:46PM -0500, Brandon Casey wrote: > > > >> From: Brandon Casey <drafnel@gmail.com> > >> > >> Generally, trailing space is removed from the string matched by the > >> xfuncname patterns. The exception is when the matched string exceeds the > >> length of the fixed-size buffer that it will be copied in to. But, a > >> string that exceeds the buffer can still contain trailing space in the > >> portion of the string that will be copied into the buffer. So, simplify > >> this code slightly, and just perform the trailing space removal always. > > > > Hrm. So we are cutting off trailing space that might have been > > non-trailing space in their original string? It is hard to argue that is > > much worse than truncating the original string in the first place. But I > > really wonder whether we should be silently truncating anything, and not > > just dying or somehow handling this better? > > > > If I understand what is going on (and I'm not sure that I do), are we > > silently producing bogus word-diffs in the face of really long lines? > > I don't think this function is used to do the word-diffs. Unless I'm > missing something, ff_regexp is only used to do the funcname matching to > produce the hunk header string. An 80-byte buffer is used to hold > that string. So, the trimming is performed on what is effectively a > comment.
Ah, OK, that makes a lot more sense. Then yeah, we should always be trimming trailing whitespace from the result, so your patch is good.
-Peff