From db8ff94e7a8cefca574532b0faeff00dd1a1b822 Mon Sep 17 00:00:00 2001 From: k4be Date: Thu, 15 Jul 2021 15:52:04 +0200 Subject: [PATCH] Free invite moddata properly --- src/modules/invite.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/modules/invite.c b/src/modules/invite.c index 97d696288..8ea5af7dc 100644 --- a/src/modules/invite.c +++ b/src/modules/invite.c @@ -97,10 +97,16 @@ MOD_UNLOAD() void invite_free(ModData *md) { - Link *invites = md->ptr; - if(!invites) + Link **inv, *tmp; + + if(!md->ptr) return; // was not set - free_link(invites); + + for (inv = (Link **)md->ptr; (tmp = *inv); inv = &tmp->next) + { + *inv = tmp->next; + free_link(tmp); + } } static int invite_channel_destroy(Channel *channel, int *should_destroy)