From 4c267f2ae37e5b5f834172f04b7dd4343e370689 Mon Sep 17 00:00:00 2001 From: Julien Dusser Date: Fri, 22 Dec 2017 18:24:37 +0100 Subject: strbuf: fix urlencode format string on signed char Git credential fails with special char in password with remote: Invalid username or password. fatal: Authentication failed for File ~/.git-credential contains badly urlencoded characters %ffffffXX%ffffffYY instead of %XX%YY. Add a cast to an unsigned char to fix urlencode use of %02x on a char. Signed-off-by: Julien Dusser Signed-off-by: Junio C Hamano --- strbuf.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/strbuf.c b/strbuf.c index 323c49ceb3..4d5a9ce551 100644 --- a/strbuf.c +++ b/strbuf.c @@ -658,7 +658,7 @@ static void strbuf_add_urlencode(struct strbuf *sb, const char *s, size_t len, (!reserved && is_rfc3986_reserved(ch))) strbuf_addch(sb, ch); else - strbuf_addf(sb, "%%%02x", ch); + strbuf_addf(sb, "%%%02x", (unsigned char)ch); } } -- cgit v1.2.1