diff --git a/url.c b/url.c index bf5bb9c88f..230623657a 100644 --- a/url.c +++ b/url.c @@ -103,12 +103,12 @@ static char *url_decode_internal(const char **query, const char *stop_at, struct char *url_decode(const char *url) { struct strbuf out = STRBUF_INIT; - const char *slash = strchr(url, '/'); + const char *colon = strchr(url, ':'); /* Skip protocol part if present */ - if (slash && url < slash) { - strbuf_add(&out, url, slash - url); - url = slash; + if (colon && url < colon) { + strbuf_add(&out, url, colon - url); + url = colon; } return url_decode_internal(&url, NULL, &out); }