Re: What happen if show_http_message fails to reencode?
From: Junio C Hamano <hidden>
Date: 2016-06-15 23:04:29
"Yi, EungJun" [off-list ref] writes:
I'm trying to make my git server sends http messages in non-ASCII encoding. And I have a question. At 206-218 in remote-curl.c:quoted
static int show_http_message(struct strbuf *type, struct strbuf *charset, struct strbuf *msg) { const char *p, *eol; /* * We only show text/plain parts, as other types are likely * to be ugly to look at on the user's terminal. */ if (strcmp(type->buf, "text/plain")) return -1; if (charset->len) strbuf_reencode(msg, charset->buf, get_log_output_encoding());What happen if the message has a character which cannot be encoded by the encoding defined by i18n.logoutputencoding? Drops only the character or brakes the whole message?
I think the implementation of strbuf_reencode() should tell you quickly, but otherwise it may warrant a sentence or two of commenting there. It leaves the msg intact when underlying iconv() reports that it couldn't reencode, so you should get the original message literally.