diff options
author | Sergey Vlasov <vsu@altlinux.ru> | 2005-05-04 21:44:15 +0400 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-05-04 10:58:15 -0700 |
commit | 13019d413647c4fbd3bb1564bbdf0d934c0a74d7 (patch) | |
tree | 571c0f4599fbeefd995bbc24480add1575c36c94 /object.c | |
parent | 705acc5c943e1147e552daf613c679c07b9772d9 (diff) | |
download | git-13019d413647c4fbd3bb1564bbdf0d934c0a74d7.tar.gz |
[PATCH] Fix memory leaks in git-fsck-cache
This patch fixes memory leaks in parse_object() and related functions;
these leaks were very noticeable when running git-fsck-cache.
Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'object.c')
-rw-r--r-- | object.c | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -107,11 +107,12 @@ struct object *parse_object(unsigned char *sha1) char type[100]; unsigned long size; void *buffer = unpack_sha1_file(map, mapsize, type, &size); + munmap(map, mapsize); if (!buffer) return NULL; if (check_sha1_signature(sha1, buffer, size, type) < 0) printf("sha1 mismatch %s\n", sha1_to_hex(sha1)); - munmap(map, mapsize); + free(buffer); if (!strcmp(type, "blob")) { struct blob *ret = lookup_blob(sha1); parse_blob(ret); |