Re: [PATCH 2/4] xdiff-interface.c: always trim trailing space from xfuncname matches
- From
Brandon Casey <casey@nrlssc.navy.mil>
- Date
- Sep 9, 2010, 19:33 UTC
- Message-ID
- <GLdpD2WwjdTYfjYpj9FXho_K_YzeaiL1jdGACbdsXplUz5EPC0X3vA@cipher.nrlssc.navy.mil>
- In-Reply-To
- <20100909192108.GC32508@sigill.intra.peff.net>
On 09/09/2010 02:21 PM, Jeff King wrote:
Show 19 quoted lines
> 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.
-Brandon