Fixed missing destructor, causing a memory leak
This commit is contained in:
parent
cda6b93212
commit
d527d2db80
1 changed files with 8 additions and 1 deletions
|
@ -105,6 +105,11 @@ static void destroy_test_stats(void *ptr, CR_UNUSED void *meta) {
|
|||
}
|
||||
}
|
||||
|
||||
static void destroy_assert_stats(void *ptr, CR_UNUSED void *meta) {
|
||||
s_assert_stats *stats = ptr;
|
||||
free((void *) stats->message);
|
||||
}
|
||||
|
||||
s_test_stats *test_stats_init(struct criterion_test *t) {
|
||||
s_test_stats *stats = smalloc(
|
||||
.size = sizeof (s_test_stats),
|
||||
|
@ -182,7 +187,9 @@ static void push_assert(s_glob_stats *stats,
|
|||
|
||||
s_assert_stats *data = ptr;
|
||||
|
||||
s_assert_stats *dup = smalloc(sizeof (s_assert_stats));
|
||||
s_assert_stats *dup = smalloc(
|
||||
.size = sizeof (s_assert_stats),
|
||||
.dtor = destroy_assert_stats);
|
||||
memcpy(dup, data, sizeof (s_assert_stats));
|
||||
dup->message = strdup(data->message);
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue