about summary refs log tree commit diff
path: root/third_party/git/url.c
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/git/url.c')
-rw-r--r--third_party/git/url.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/third_party/git/url.c b/third_party/git/url.c
index 1b8ef78cea..e04bd60b6b 100644
--- a/third_party/git/url.c
+++ b/third_party/git/url.c
@@ -5,7 +5,7 @@ int is_urlschemechar(int first_flag, int ch)
 {
 	/*
 	 * The set of valid URL schemes, as per STD66 (RFC3986) is
-	 * '[A-Za-z][A-Za-z0-9+.-]*'. But use sightly looser check
+	 * '[A-Za-z][A-Za-z0-9+.-]*'. But use slightly looser check
 	 * of '[A-Za-z0-9][A-Za-z0-9+.-]*' because earlier version
 	 * of check used '[A-Za-z0-9]+' so not to break any remote
 	 * helpers.
@@ -86,6 +86,12 @@ char *url_decode_mem(const char *url, int len)
 	return url_decode_internal(&url, len, NULL, &out, 0);
 }
 
+char *url_percent_decode(const char *encoded)
+{
+	struct strbuf out = STRBUF_INIT;
+	return url_decode_internal(&encoded, strlen(encoded), NULL, &out, 0);
+}
+
 char *url_decode_parameter_name(const char **query)
 {
 	struct strbuf out = STRBUF_INIT;