Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
Merge branch 'rs/fsck-obj-leakfix' into maint
author
Junio C Hamano
<gitster@pobox.com>
Sun, 10 Sep 2017 08:02:52 +0000
(17:02 +0900)
committer
Junio C Hamano
<gitster@pobox.com>
Sun, 10 Sep 2017 08:02:53 +0000
(17:02 +0900)
Memory leak in an error codepath has been plugged.
* rs/fsck-obj-leakfix:
fsck: free buffers on error in fsck_obj()
1
2
builtin/fsck.c
patch
|
diff1
|
diff2
|
blob
|
history
raw
|
combined
(merge:
e0d52ec
83cd6f9
)
diff --cc
builtin/fsck.c
index 64542ac3dea48e3a92901319233aa3a1e0c4cb9a,ab0de7b9d3ef5002644b841825154af75dcde349..d18244ab546bae863e6ef81d58663dc5c27c49c0
---
1
/
builtin/fsck.c
---
2
/
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)
{
/*