On Tue, Feb 12, 2013 at 9:10 AM, Junio C Hamano <gitster@xxxxxxxxx> wrote: >> Similar cases: >> >> config.c:git_default_core_config() assumes core.commentchar is ascii. >> We should catch and report non-ascii chars, or simply accept it as a >> string. > > That one is just an uninterpreted byte. core.commentString might be > a nice extension to the concept, but it is an entirely different > category. My point is not to output broken utf-8 if we can. If someone accidentally puts a UTF-8 character in core.commentChar, it will produce broken utf-8 templates that editors might react, but hard to see by eye. Something like this may give sufficient protection: diff --git a/config.c b/config.c index aefd80b..b6f73e0 100644 --- a/config.c +++ b/config.c @@ -726,8 +726,11 @@ static int git_default_core_config(const char *var, const char *value) if (!strcmp(var, "core.commentchar")) { const char *comment; int ret = git_config_string(&comment, var, value); - if (!ret) + if (!ret) { + if (comment[1]) + return error("core.commentchar must be one ASCII character"); comment_line_char = comment[0]; + } return ret; } -- Duy -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html