From: Junio C Hamano Date: Mon, 17 Oct 2016 22:49:13 GMT Subject: Re: [PATCH] submodule--helper: normalize funny urls Message-ID: In-Reply-To: <20161017221623.7299-1-sbeller@google.com> Stefan Beller writes: > +static void strip_url_ending(char *url, size_t *_len) > +{ > + int check_url_stripping = 1; > + size_t len = _len ? *_len : strlen(url); > + > + while (check_url_stripping) { > + check_url_stripping = 0; > + if (is_dir_sep(url[len-2]) && url[len-1] == '.') { This is "strip /. at the end" it seems. Does anything in the loop control guarantees 2 <= len at this point? > + url[len-2] = '\0'; > + len -= 2; > + check_url_stripping = 1; > + } > + > + if (is_dir_sep(url[len-1])) { This is "strip / at the end" it seems. Does anything in the loop control guarantees 1 <= len at this point? > + url[len-1] = '\0'; > + len--; > + check_url_stripping = 1; > + } > + }