diff options
author | Joseph Hunkeler <jhunkeler@users.noreply.github.com> | 2025-02-04 13:06:11 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-02-04 13:06:11 -0500 |
commit | 89bd28eb5ac263d1753021f25e1bc62f48e7008d (patch) | |
tree | 622918f9a81723b830ab8bcc403154271932b591 /src/lib/core | |
parent | 2372e40c40ef7bc85176d8998272ad75a59fcf05 (diff) | |
parent | 825aa472739775a5e2d673043f9d846df1eac924 (diff) | |
download | stasis-89bd28eb5ac263d1753021f25e1bc62f48e7008d.tar.gz |
Merge pull request #86 from jhunkeler/memfixes
ASAN: Fix leaks
Diffstat (limited to 'src/lib/core')
-rw-r--r-- | src/lib/core/junitxml.c | 4 | ||||
-rw-r--r-- | src/lib/core/strlist.c | 1 | ||||
-rw-r--r-- | src/lib/core/wheel.c | 1 |
3 files changed, 6 insertions, 0 deletions
diff --git a/src/lib/core/junitxml.c b/src/lib/core/junitxml.c index f747224..628f75f 100644 --- a/src/lib/core/junitxml.c +++ b/src/lib/core/junitxml.c @@ -8,6 +8,9 @@ static void testcase_result_state_free(struct JUNIT_Testcase **testcase) { if (tc->tc_result_state_type == JUNIT_RESULT_STATE_FAILURE) { guard_free(tc->result_state.failure->message); guard_free(tc->result_state.failure); + } else if (tc->tc_result_state_type == JUNIT_RESULT_STATE_ERROR) { + guard_free(tc->result_state.error->message); + guard_free(tc->result_state.error); } else if (tc->tc_result_state_type == JUNIT_RESULT_STATE_SKIPPED) { guard_free(tc->result_state.skipped->message); guard_free(tc->result_state.skipped); @@ -31,6 +34,7 @@ void junitxml_testsuite_free(struct JUNIT_Testsuite **testsuite) { for (size_t i = 0; i < suite->_tc_alloc; i++) { testcase_free(&suite->testcase[i]); } + guard_free(suite->testcase); guard_free(suite); } diff --git a/src/lib/core/strlist.c b/src/lib/core/strlist.c index ec7b3f4..0436f54 100644 --- a/src/lib/core/strlist.c +++ b/src/lib/core/strlist.c @@ -218,6 +218,7 @@ void strlist_remove(struct StrList *pStrList, size_t index) { return; } if (pStrList->data[index] != NULL) { + guard_free(pStrList->data[index]); for (size_t i = index; i < count; i++) { pStrList->data[i] = pStrList->data[i + 1]; } diff --git a/src/lib/core/wheel.c b/src/lib/core/wheel.c index d5d5ff0..32091cd 100644 --- a/src/lib/core/wheel.c +++ b/src/lib/core/wheel.c @@ -121,5 +121,6 @@ void wheel_free(struct Wheel **wheel) { guard_free(w->python_tag); guard_free(w->abi_tag); guard_free(w->python_tag); + guard_free(w->platform_tag); guard_free(w); } |