"Pat Notz" <patnotz@xxxxxxxxx> writes: > diff --git a/commit.h b/commit.h > index 9113bbe..c246c94 100644 > --- a/commit.h > +++ b/commit.h > @@ -87,6 +87,7 @@ struct rev_info; /* in revision.h, it circularly uses enum cmit_fmt */ > extern char *reencode_commit_message(const struct commit *commit, > const char **encoding_p); > extern void get_commit_format(const char *arg, struct rev_info *); > +extern char *get_header(const struct commit *commit, const char *key); The name of the function was perfectly Ok within the context of pretty.c, as the file was about commit log message and nothing else, but it is a bit mindless to expose it to outside world still with such a generic name. But the bigger question is why the patch doesn't get rid of the bulk of the body of the block and replace it with a call to logmsg_reencode(). diff --git a/builtin/commit.c b/builtin/commit.c index 66fdd22..021fb1c 100644 --- a/builtin/commit.c +++ b/builtin/commit.c @@ -899,7 +899,6 @@ static int parse_and_validate_options(int argc, const char *argv[], unsigned char sha1[20]; static char utf8[] = "UTF-8"; const char *out_enc; - char *enc, *end; struct commit *commit; if (get_sha1(use_message, sha1)) @@ -908,18 +907,8 @@ static int parse_and_validate_options(int argc, const char *argv[], if (!commit || parse_commit(commit)) die("could not parse commit %s", use_message); - enc = strstr(commit->buffer, "\nencoding"); - if (enc) { - end = strchr(enc + 10, '\n'); - enc = xstrndup(enc + 10, end - (enc + 10)); - } else { - enc = utf8; - } out_enc = git_commit_encoding ? git_commit_encoding : utf8; - - if (strcmp(out_enc, enc)) - use_message_buffer = - reencode_string(commit->buffer, out_enc, enc); + use_message_buffer = logmsg_reencode(commit, out_enc); /* * If we failed to reencode the buffer, just copy it @@ -929,8 +918,6 @@ static int parse_and_validate_options(int argc, const char *argv[], */ if (use_message_buffer == NULL) use_message_buffer = xstrdup(commit->buffer); - if (enc != utf8) - free(enc); } if (!!also + !!only + !!all + !!interactive > 1) -- 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