From: Junio C Hamano Date: Tue, 22 Aug 2017 17:29:13 +0000 (-0700) Subject: Merge branch 'rs/fsck-obj-leakfix' X-Git-Tag: v2.15.0-rc0~162 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=2d68161a230a6a713ac0f4ad68c51cc856e83338;p=git-core%2Fgit.git Merge branch 'rs/fsck-obj-leakfix' Memory leak in an error codepath has been plugged. * rs/fsck-obj-leakfix: fsck: free buffers on error in fsck_obj() --- 2d68161a230a6a713ac0f4ad68c51cc856e83338 diff --cc builtin/fsck.c index a92f44818,ab0de7b9d..b0964a8d3 --- a/builtin/fsck.c +++ b/builtin/fsck.c @@@ -365,10 -369,15 +360,15 @@@ static int fsck_obj(struct object *obj } } - return 0; + out: + if (obj->type == OBJ_TREE) + free_tree_buffer((struct tree *)obj); + if (obj->type == OBJ_COMMIT) + free_commit_buffer((struct commit *)obj); + return err; } -static int fsck_obj_buffer(const unsigned char *sha1, enum object_type type, +static int fsck_obj_buffer(const struct object_id *oid, enum object_type type, unsigned long size, void *buffer, int *eaten) { /*