Tay Ray Chuan <rctay89@xxxxxxxxx> writes: > Signed-off-by: Tay Ray Chuan <rctay89@xxxxxxxxx> > --- > remote-curl.c | 9 ++++++--- > 1 files changed, 6 insertions(+), 3 deletions(-) > > diff --git a/remote-curl.c b/remote-curl.c > index 0782756..0f21f8a 100644 > --- a/remote-curl.c > +++ b/remote-curl.c > @@ -101,7 +101,8 @@ static struct discovery* discover_refs(const char *service) > return last; > free_discovery(last); > > - strbuf_addf(&buffer, "%s/info/refs", url); > + end_url_with_slash(&buffer, url); > + strbuf_addstr(&buffer, "info/refs"); > if (!prefixcmp(url, "http://") || !prefixcmp(url, "https://")) { > is_http = 1; > if (!strchr(url, '?')) > @@ -120,7 +121,8 @@ static struct discovery* discover_refs(const char *service) > strbuf_reset(&buffer); > > proto_git_candidate = 0; > - strbuf_addf(&buffer, "%s/info/refs", url); > + end_url_with_slash(&buffer, url); > + strbuf_addstr(&buffer, "info/refs"); > refs_url = strbuf_detach(&buffer, NULL); > > http_ret = http_get_strbuf(refs_url, &buffer, HTTP_NO_CACHE); > @@ -511,7 +513,8 @@ static int rpc_service(struct rpc_state *rpc, struct discovery *heads) > rpc->out = client.out; > strbuf_init(&rpc->result, 0); > > - strbuf_addf(&buf, "%s/%s", url, svc); > + end_url_with_slash(&buf, url) > + strbuf_addf(&buf, "%s", svc); > rpc->service_url = strbuf_detach(&buf, NULL); > > strbuf_addf(&buf, "Content-Type: application/x-%s-request", svc); The code does not look like it is making sure things do not have a trailing slash. For example, if svc has trailing slash, either %s/%s or strbuf_addf() would have the last character of svc in rpc->service_url. You are fixing something else. The new code avoids duplicated slashes in the middle if "url" can but does not necessarily end with a slash. Is that what you are trying to fix? I wonder if it makes more sense to make sure "url" always ends with a slash at the calling sites where it is obtained from either the end user or from the running environment... -- 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