aboutsummaryrefslogtreecommitdiff
path: root/src/lib/core
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@users.noreply.github.com>2025-02-04 13:06:11 -0500
committerGitHub <noreply@github.com>2025-02-04 13:06:11 -0500
commit89bd28eb5ac263d1753021f25e1bc62f48e7008d (patch)
tree622918f9a81723b830ab8bcc403154271932b591 /src/lib/core
parent2372e40c40ef7bc85176d8998272ad75a59fcf05 (diff)
parent825aa472739775a5e2d673043f9d846df1eac924 (diff)
downloadstasis-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.c4
-rw-r--r--src/lib/core/strlist.c1
-rw-r--r--src/lib/core/wheel.c1
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);
}