Browse Source

Fix commit_tree() buffer leak

The commit_tree() strbuf has a minimum size of 8k and it has not been
released yet.  This patch releases the buffer.

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Stephan Beyer 17 years ago committed by Junio C Hamano
parent
commit
ffa9fd9570
  1. 5
      builtin-commit-tree.c

5
builtin-commit-tree.c

@ -48,6 +48,7 @@ static const char commit_utf8_warn[] = @@ -48,6 +48,7 @@ static const char commit_utf8_warn[] =
int commit_tree(const char *msg, unsigned char *tree,
struct commit_list *parents, unsigned char *ret)
{
int result;
int encoding_is_utf8;
struct strbuf buffer;

@ -86,7 +87,9 @@ int commit_tree(const char *msg, unsigned char *tree, @@ -86,7 +87,9 @@ int commit_tree(const char *msg, unsigned char *tree,
if (encoding_is_utf8 && !is_utf8(buffer.buf))
fprintf(stderr, commit_utf8_warn);

return write_sha1_file(buffer.buf, buffer.len, commit_type, ret);
result = write_sha1_file(buffer.buf, buffer.len, commit_type, ret);
strbuf_release(&buffer);
return result;
}

int cmd_commit_tree(int argc, const char **argv, const char *prefix)

Loading…
Cancel
Save