diff --git a/builtin/commit.c b/builtin/commit.c index d496980421..d8abbe48b1 100644 --- a/builtin/commit.c +++ b/builtin/commit.c @@ -685,7 +685,7 @@ static void adjust_comment_line_char(const struct strbuf *sb) const char *p; if (!memchr(sb->buf, candidates[0], sb->len)) { - comment_line_char = candidates[0]; + comment_line_str = xstrfmt("%c", candidates[0]); return; } @@ -706,7 +706,7 @@ static void adjust_comment_line_char(const struct strbuf *sb) if (!*p) die(_("unable to select a comment character that is not used\n" "in the current commit message")); - comment_line_char = *p; + comment_line_str = xstrfmt("%c", *p); } static void prepare_amend_commit(struct commit *commit, struct strbuf *sb, diff --git a/config.c b/config.c index f561631374..7e5dbca4bd 100644 --- a/config.c +++ b/config.c @@ -1568,7 +1568,7 @@ static int git_default_core_config(const char *var, const char *value, else if (value[0] && !value[1]) { if (value[0] == '\n') return error(_("core.commentChar cannot be newline")); - comment_line_char = value[0]; + comment_line_str = xstrfmt("%c", value[0]); auto_comment_line_char = 0; } else return error(_("core.commentChar should only be one ASCII character")); diff --git a/environment.c b/environment.c index 90632a39bc..0a9f5db407 100644 --- a/environment.c +++ b/environment.c @@ -110,7 +110,7 @@ int protect_ntfs = PROTECT_NTFS_DEFAULT; * The character that begins a commented line in user-editable file * that is subject to stripspace. */ -char comment_line_char = '#'; +const char *comment_line_str = "#"; int auto_comment_line_char; /* Parallel index stat data preload? */ diff --git a/environment.h b/environment.h index e5351c9dd9..3496474cce 100644 --- a/environment.h +++ b/environment.h @@ -8,7 +8,8 @@ struct strvec; * The character that begins a commented line in user-editable file * that is subject to stripspace. */ -extern char comment_line_char; +#define comment_line_char (comment_line_str[0]) +extern const char *comment_line_str; extern int auto_comment_line_char; /*