From: Junio C Hamano Date: Thu, 19 Oct 2017 05:30:08 GMT Subject: Re: [PATCH] diff.c: increment buffer pointer in all code path Message-ID: In-Reply-To: <20171019052457.gqenoshgyjcw53tb@sigill.intra.peff.net> Jeff King writes: > it does. It just adjusts our "end pointer" to point to the last valid > character in the string (rather than one past), which seems to be the > convention that those loops (and next_byte) expect. Yeah I am not sure if I like this comparison at the beginning of the function: static int next_byte(const char **cp, const char **endp, const struct diff_options *diffopt) { int retval; if (*cp > *endp) return -1; but it says endp _is_ part of valid input, contrary to my intuition. And your change to the initialization of ae/be in moved_entry_cmp() makes it consistent with it, I think. But doesn't it mean ae computation in get_string_hash() also needs a massaging?