commit-graph: clear oidset after finishing write
In graph_write() we store commits in an oidset, but never clean it up, leaking the contents. We should clear it in the cleanup section. The oidset comes frommaint6830c36077
(commit-graph.h: replace 'commit_hex' with 'commits', 2020-04-13), but it was just replacing a string_list that was also leaked. Curiously, we fixed the leak of some adjacent variables in commitfa8953cb40
(builtin/commit-graph.c: extract 'read_one_commit()', 2020-05-18), but the oidset wasn't included for some reason. In combination with the preceding commits, this lets us mark t5324 as leak-free. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
parent
d9c84c6d67
commit
da09e7af68
|
@ -311,6 +311,7 @@ cleanup:
|
||||||
FREE_AND_NULL(options);
|
FREE_AND_NULL(options);
|
||||||
string_list_clear(&pack_indexes, 0);
|
string_list_clear(&pack_indexes, 0);
|
||||||
strbuf_release(&buf);
|
strbuf_release(&buf);
|
||||||
|
oidset_clear(&commits);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
test_description='split commit graph'
|
test_description='split commit graph'
|
||||||
|
|
||||||
|
TEST_PASSES_SANITIZE_LEAK=true
|
||||||
. ./test-lib.sh
|
. ./test-lib.sh
|
||||||
|
|
||||||
GIT_TEST_COMMIT_GRAPH=0
|
GIT_TEST_COMMIT_GRAPH=0
|
||||||
|
|
Loading…
Reference in New Issue