From be22d92eac809ad2bfa2b7c83ad7cad5a15f1c43 Mon Sep 17 00:00:00 2001 From: Jonathan Nieder Date: Mon, 5 Sep 2011 17:22:02 -0500 Subject: http: avoid empty error messages for some curl errors When asked to fetch over SSL without a valid /etc/ssl/certs/ca-certificates.crt file, "git fetch" writes error: while accessing https://github.com/torvalds/linux.git/info/refs which is a little disconcerting. Better to fall back to curl_easy_strerror(result) when the error string is empty, like the curl utility does: error: Problem with the SSL CA cert (path? access rights?) while accessing https://github.com/torvalds/linux.git/info/refs Signed-off-by: Jonathan Nieder Signed-off-by: Junio C Hamano --- http.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/http.c b/http.c index 74197519b1..61a90896ec 100644 --- a/http.c +++ b/http.c @@ -846,8 +846,13 @@ static int http_request(const char *url, void *result, int target, int options) init_curl_http_auth(slot->curl); ret = HTTP_REAUTH; } - } else + } else { + if (!curl_errorstr[0]) + strlcpy(curl_errorstr, + curl_easy_strerror(results.curl_result), + sizeof(curl_errorstr)); ret = HTTP_ERROR; + } } else { error("Unable to start HTTP request for %s", url); ret = HTTP_START_FAILED; -- cgit v1.2.3