Skip to content

Commit 91db6c7

Browse files
brandb97gitster
authored andcommitted
reftable/writer: fix memory leak when writer_index_hash() fails
In reftable/writer.c:writer_index_hash(), if `reftable_buf_add` failed, key allocated by `reftable_malloc` will not be insert into `obj_index_tree` thus leaks. Simple add reftable_free(key) will solve this problem. Signed-off-by: Lidong Yan <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent c8e752e commit 91db6c7

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

reftable/writer.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -258,8 +258,10 @@ static int writer_index_hash(struct reftable_writer *w, struct reftable_buf *has
258258

259259
reftable_buf_reset(&key->hash);
260260
err = reftable_buf_add(&key->hash, hash->buf, hash->len);
261-
if (err < 0)
261+
if (err < 0) {
262+
reftable_free(key);
262263
return err;
264+
}
263265
tree_insert(&w->obj_index_tree, key,
264266
&obj_index_tree_node_compare);
265267
} else {

0 commit comments

Comments
 (0)