From: Junio C Hamano Date: Mon, 15 Sep 2014 20:39:25 GMT Subject: Re: [PATCH v14 01/11] trailer: add data structures and basic functions Message-ID: In-Reply-To: <20140915053142.26573.86374.chriscool@tuxfamily.org> Christian Couder writes: > +/* Get the length of buf from its beginning until its last alphanumeric character */ That makes it sound as if feeding "abc%de#f@" to the function returns 3 for "abc", but > +static size_t alnum_len(const char *buf, size_t len) > +{ > + while (len > 0 && !isalnum(buf[len - 1])) > + len--; > + return len; > +} doesn't it look at '@', be unhappy and decrement, look at 'f' and break out to return the length of "abc%de#f"? Perhaps that behaviour _is_ what you want, but then the comment is lying, no?