mirror of
https://github.com/git/git.git
synced 2024-11-19 08:25:21 +01:00
i18n: do not leak 'encoding' header even when we cheat the conversion.
We special case the case where encoding recorded in the commit and the output encoding are the same and do not call iconv(). But we should drop 'encoding' header for this case as well for consistency. Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
parent
fbc9012307
commit
e90068a904
10
commit.c
10
commit.c
@ -679,11 +679,13 @@ static char *logmsg_reencode(const struct commit *commit)
|
||||
else if (!*output_encoding)
|
||||
return NULL;
|
||||
encoding = get_header(commit, "encoding");
|
||||
if (!encoding || !strcmp(encoding, output_encoding)) {
|
||||
free(encoding);
|
||||
if (!encoding)
|
||||
return NULL;
|
||||
}
|
||||
out = reencode_string(commit->buffer, output_encoding, encoding);
|
||||
if (!strcmp(encoding, output_encoding))
|
||||
out = strdup(commit->buffer);
|
||||
else
|
||||
out = reencode_string(commit->buffer,
|
||||
output_encoding, encoding);
|
||||
if (out)
|
||||
out = replace_encoding_header(out, output_encoding);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user