Browse Source

git cat-file: Fix memory leak in batch mode

When run in batch mode, git cat-file never frees the memory for the blob
contents it is printing. This quickly adds up and causes git-svn to be
hardly usable for imports of large svn repos, because it uses cat-file in
batch mode and cat-file's memory usage easily reaches several hundred MB
without any good reason.

Signed-off-by: Björn Steinbrink <B.Steinbrink@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Björn Steinbrink 17 years ago committed by Junio C Hamano
parent
commit
5b8a94b1db
  1. 1
      builtin-cat-file.c

1
builtin-cat-file.c

@ -181,6 +181,7 @@ static int batch_one_object(const char *obj_name, int print_contents) @@ -181,6 +181,7 @@ static int batch_one_object(const char *obj_name, int print_contents)
write_or_die(1, contents, size);
printf("\n");
fflush(stdout);
free(contents);
}

return 0;

Loading…
Cancel
Save