test-tool bloom: fix memory leaks
Fix memory leaks introduced with these tests in f1294eaf7fb (bloom.c: introduce core Bloom filter constructs, 2020-03-30), as a result we can mark almost the entirety of t0095-bloom.sh as passing with SANITIZE=leak using "TEST_PASSES_SANITIZE_LEAK=true", there's still an unrelated memory leak in "git commit" in one of the tests, let's skip that one under SANITIZE_LEAK for now. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Ævar Arnfjörð Bjarmason committed
Jul 1, 2022 at 12:37 UTC
9794633b4e9fefd83fa39c2fd05e9ac8068b744d
2 files changed
+3
-1
t/helper/test-bloom.c
+2
@@ -16,6 +16,7 @@ static void add_string_to_filter(const char *data, struct bloom_filter *filter)
16
}
17
printf("\n");
18
add_key_to_filter(&key, filter, &settings);
19
+ clear_bloom_key(&key);
20
}
21
22
static void print_bloom_filter(struct bloom_filter *filter) {
@@ -80,6 +81,7 @@ int cmd__bloom(int argc, const char **argv)
81
}
82
83
print_bloom_filter(&filter);
84
+ free(filter.data);
85
}
86
87
if (!strcmp(argv[1], "get_filter_for_commit")) {
t/t0095-bloom.sh
+1
-1
@@ -67,7 +67,7 @@ test_expect_success 'compute bloom key for test string 2' '
67
test_cmp expect actual
68
'
69
70
-test_expect_success 'get bloom filters for commit with no changes' '
70
+test_expect_success !SANITIZE_LEAK 'get bloom filters for commit with no changes' '
71
git init &&
72
git commit --allow-empty -m "c0" &&
73
cat >expect <<-\EOF &&