diff options
author | Junio C Hamano <gitster@pobox.com> | 2016-09-19 13:51:43 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2016-09-19 13:51:43 -0700 |
commit | c3befaeab9ebd0def9f03d434a52cf40614c65f9 (patch) | |
tree | eaa41d9b527b3bdb4c8a6a78443a9277e1c5740f /url.c | |
parent | 815a73f7143214510fae6e8a2f2077b2e8694509 (diff) | |
parent | d23309733a5b2a9e1adc304ee50c5a5ed7a087c2 (diff) | |
download | git-c3befaeab9ebd0def9f03d434a52cf40614c65f9.tar.gz git-c3befaeab9ebd0def9f03d434a52cf40614c65f9.tar.xz |
Merge branch 'rs/hex2chr' into maint
Code cleanup.
* rs/hex2chr:
introduce hex2chr() for converting two hexadecimal digits to a character
Diffstat (limited to 'url.c')
-rw-r--r-- | url.c | 21 |
1 files changed, 1 insertions, 20 deletions
@@ -29,25 +29,6 @@ int is_url(const char *url) return (url[0] == ':' && url[1] == '/' && url[2] == '/'); } -static int url_decode_char(const char *q) -{ - int i; - unsigned char val = 0; - for (i = 0; i < 2; i++) { - unsigned char c = *q++; - val <<= 4; - if (c >= '0' && c <= '9') - val += c - '0'; - else if (c >= 'a' && c <= 'f') - val += c - 'a' + 10; - else if (c >= 'A' && c <= 'F') - val += c - 'A' + 10; - else - return -1; - } - return val; -} - static char *url_decode_internal(const char **query, int len, const char *stop_at, struct strbuf *out, int decode_plus) @@ -66,7 +47,7 @@ static char *url_decode_internal(const char **query, int len, } if (c == '%') { - int val = url_decode_char(q + 1); + int val = hex2chr(q + 1); if (0 <= val) { strbuf_addch(out, val); q += 3; |