Index: libexec/got-fetch-pack/got-fetch-pack.c
--- libexec/got-fetch-pack/got-fetch-pack.c.orig
+++ libexec/got-fetch-pack/got-fetch-pack.c
@@ -193,13 +193,16 @@ fetch_progress(struct imsgbuf *ibuf, const char *buf, 
 	if (len > MAX_IMSGSIZE - IMSG_HEADER_SIZE)
 		len = MAX_IMSGSIZE - IMSG_HEADER_SIZE;
 
-	/* Only allow printable ASCII. */
+	/*
+	 * We only allow printable ASCII for safety reasons and silently
+	 * ignore non-ASCII messages, which may be somewhat legitimately
+	 * caused by Git servers running in a non-English language locale.
+	 */
 	for (i = 0; i < len; i++) {
 		if (isprint((unsigned char)buf[i]) ||
 		    isspace((unsigned char)buf[i]))
 			continue;
-		return got_error_msg(GOT_ERR_BAD_PACKET,
-		    "non-printable progress message received from server");
+		return NULL;
 	}
 
 	return send_fetch_server_progress(ibuf, buf, len);
