Skip to content

Commit

Permalink
Properly free config_merge results in C API usage
Browse files Browse the repository at this point in the history
  • Loading branch information
jagerman committed Oct 19, 2023
1 parent 39b7761 commit 7f0bcc0
Showing 1 changed file with 19 additions and 7 deletions.
26 changes: 19 additions & 7 deletions tests/test_group_keys.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -679,10 +679,15 @@ TEST_CASE("Group Keys - C API", "[config][groups][keys][c]") {
get_timestamp_ms(),
a.info,
a.members));
REQUIRE(config_merge(a.info, merge_hash1, &merge_data1[0], &merge_size1[0], 1));
config_string_list* hashes;
hashes = config_merge(a.info, merge_hash1, &merge_data1[0], &merge_size1[0], 1);
REQUIRE(hashes->len);
free(hashes);
config_confirm_pushed(a.info, new_info_config1->seqno, "fakehash1");

REQUIRE(config_merge(a.members, merge_hash1, &merge_data1[1], &merge_size1[1], 1));
hashes = config_merge(a.members, merge_hash1, &merge_data1[1], &merge_size1[1], 1);
REQUIRE(hashes->len);
free(hashes);
config_confirm_pushed(a.members, new_mem_config1->seqno, "fakehash1");

REQUIRE(groups_members_size(a.members) == 1);
Expand All @@ -702,8 +707,11 @@ TEST_CASE("Group Keys - C API", "[config][groups][keys][c]") {
get_timestamp_ms(),
m.info,
m.members));
REQUIRE_THROWS(config_merge(m.info, merge_hash1, &merge_data1[0], &merge_size1[0], 1));
REQUIRE_THROWS(config_merge(m.members, merge_hash1, &merge_data1[1], &merge_size1[1], 1));
config_string_list* hashes;
REQUIRE_THROWS(
hashes = config_merge(m.info, merge_hash1, &merge_data1[0], &merge_size1[0], 1));
REQUIRE_THROWS(
hashes = config_merge(m.members, merge_hash1, &merge_data1[1], &merge_size1[1], 1));

REQUIRE(groups_members_size(m.members) == 0);
}
Expand Down Expand Up @@ -754,10 +762,14 @@ TEST_CASE("Group Keys - C API", "[config][groups][keys][c]") {
get_timestamp_ms(),
a.info,
a.members));
REQUIRE(config_merge(a.info, merge_hash2, &merge_data2[0], &merge_size2[0], 1));
config_string_list* hashes;
hashes = config_merge(a.info, merge_hash2, &merge_data2[0], &merge_size2[0], 1);
REQUIRE(hashes->len);
free(hashes);
config_confirm_pushed(a.info, new_info_config2->seqno, "fakehash2");

REQUIRE(config_merge(a.members, merge_hash2, &merge_data2[1], &merge_size2[1], 1));
hashes = config_merge(a.members, merge_hash2, &merge_data2[1], &merge_size2[1], 1);
REQUIRE(hashes->len);
free(hashes);
config_confirm_pushed(a.members, new_mem_config2->seqno, "fakehash2");

REQUIRE(groups_members_size(a.members) == 5);
Expand Down

0 comments on commit 7f0bcc0

Please sign in to comment.