pespin submitted this change.

View Change


Approvals: Jenkins Builder: Verified fixeria: Looks good to me, approved
gmm: Free allocated GMMEs when freeing main context

Change-Id: I092b2d133467d1c2dcb8dfe5def99d49807b6273
---
M src/gmm/gmm.c
1 file changed, 20 insertions(+), 1 deletion(-)

diff --git a/src/gmm/gmm.c b/src/gmm/gmm.c
index 163bbe8..a8b8362 100644
--- a/src/gmm/gmm.c
+++ b/src/gmm/gmm.c
@@ -78,6 +78,16 @@
{ 0 } /* empty item at the end */
};

+static void gprs_gmm_ctx_free(void)
+{
+ struct gprs_gmm_entity *gmme;
+
+ while ((gmme = llist_first_entry_or_null(&g_ctx->gmme_list, struct gprs_gmm_entity, list)))
+ gprs_gmm_gmme_free(gmme);
+
+ talloc_free(g_ctx);
+}
+
int osmo_gprs_gmm_init(enum osmo_gprs_gmm_location location)
{
bool first_init = true;
@@ -86,7 +96,7 @@

if (g_ctx) {
first_init = false;
- talloc_free(g_ctx);
+ gprs_gmm_ctx_free();
}

g_ctx = talloc_zero(NULL, struct gprs_gmm_ctx);

To view, visit change 32125. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: libosmo-gprs
Gerrit-Branch: master
Gerrit-Change-Id: I092b2d133467d1c2dcb8dfe5def99d49807b6273
Gerrit-Change-Number: 32125
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin@sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy@sysmocom.de>
Gerrit-Reviewer: pespin <pespin@sysmocom.de>
Gerrit-MessageType: merged