test-tool {dump,scrap}-cache-tree: fix memory leaks
Fix memory leaks in two test-tools used by t0090-cache-tree.sh. As a result we can mark the test as passing with SANITIZE=leak using "TEST_PASSES_SANITIZE_LEAK=true". Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
e287a5b0a4
commit
9afa46d4a6
@ -59,11 +59,16 @@ int cmd__dump_cache_tree(int ac, const char **av)
|
||||
{
|
||||
struct index_state istate;
|
||||
struct cache_tree *another = cache_tree();
|
||||
int ret;
|
||||
|
||||
setup_git_directory();
|
||||
if (read_cache() < 0)
|
||||
die("unable to read index file");
|
||||
istate = the_index;
|
||||
istate.cache_tree = another;
|
||||
cache_tree_update(&istate, WRITE_TREE_DRY_RUN);
|
||||
return dump_cache_tree(active_cache_tree, another, "");
|
||||
ret = dump_cache_tree(active_cache_tree, another, "");
|
||||
cache_tree_free(&another);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
@ -12,6 +12,7 @@ int cmd__scrap_cache_tree(int ac, const char **av)
|
||||
hold_locked_index(&index_lock, LOCK_DIE_ON_ERROR);
|
||||
if (read_cache() < 0)
|
||||
die("unable to read index file");
|
||||
cache_tree_free(&active_cache_tree);
|
||||
active_cache_tree = NULL;
|
||||
if (write_locked_index(&the_index, &index_lock, COMMIT_LOCK))
|
||||
die("unable to write index file");
|
||||
|
@ -5,6 +5,8 @@ test_description="Test whether cache-tree is properly updated
|
||||
Tests whether various commands properly update and/or rewrite the
|
||||
cache-tree extension.
|
||||
"
|
||||
|
||||
TEST_PASSES_SANITIZE_LEAK=true
|
||||
. ./test-lib.sh
|
||||
|
||||
cmp_cache_tree () {
|
||||
|
Loading…
Reference in New Issue
Block a user