Merge branch 'wip/parameter-leak' into 'main'

util: free the test parameters after the run

See merge request libinput/libei!372
This commit is contained in:
Peter Hutterer 2025-12-16 10:32:40 +10:00
commit 7ae2548bae

View file

@ -57,7 +57,7 @@ munit_tests_run(int argc, char **argv)
size_t idx = 0;
foreach_test(t) {
size_t nparams = 0;
MunitParameterEnum *parameters = calloc(MUNIT_TEST_MAX_PARAMS, sizeof(*parameters));
MunitParameterEnum *parameters = calloc(MUNIT_TEST_MAX_PARAMS + 1, sizeof(*parameters)); /* null-terminated */
const char *name = NULL;
char **values = NULL;
@ -124,6 +124,13 @@ munit_tests_run(int argc, char **argv)
int rc = munit_suite_main(&suite, setup.userdata, setup.argc, setup.argv);
for (idx = 0; idx < count; idx++) {
MunitParameterEnum *parameters = tests[idx].parameters;
while (parameters && parameters->name) {
free(parameters->name);
strv_free(parameters->values);
parameters++;
}
free(tests[idx].name);
free(tests[idx].parameters);
}