On Mon, Oct 14, 2013 at 03:25:29PM -0700, Junio C Hamano wrote: > > + /* > > + * Look from the end-of-line to find the trailing ">" of the mail > > + * address, even though we should already know it as split->mail_end. > > + * This can help in cases of broken idents with an extra ">" somewhere > > + * in the email address. Note that we are assuming the timestamp will > > + * never have a ">" in it. > > + * > > + * Note also that this memchr can never return NULL, as we would > > + * always find at least the split->mail_end closing bracket. > > + */ > > + cp = memrchr(split->mail_end, '>', len - (split->mail_end - line)); > > + for (cp = cp + 1; cp < line + len && isspace(*cp); cp++) > > ; > > "git grep" tells me this is the first use of memrchr(), which, > unlike memchr(), is _GNU_SOURCE-only if I am not mistaken, so we may > need a fallback definition in the compat/ and NEEDS_MEMRCHR in the > Makefile, I think. Yeah, you are right[1]. I'm happy to re-roll. I wonder if we even need to worry about a compatibility wrapper. We are already doing pointer manipulations, and it is probably just as readable to roll the loop by hand. -Peff [1] I even looked at "man memrchr" on my glibc system and was surprised to see it mentioned above the "#define _GNU_SOURCE" fold. But that "fold" is used only sometimes (e.g., strchrnul), and not others (in memrchr, the portability bits are listed at the end of the synopsis). Grr. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html