[PATCH] remote-curl: ensure that URLs do not have a trailing slash
Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
---
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);
--
1.7.0.20.gcb44ed