[FIX] (Try to) fix the memory leak

This commit is contained in:
LDA 2024-10-03 07:53:39 +02:00
commit 17474bda0f
2 changed files with 13 additions and 20 deletions

View file

@ -122,6 +122,7 @@ ParseeMemberHandler(ParseeData *data, HashMap *event)
Free(avatar);
Free(name);
Free(muc);
avatar = NULL;
/* TODO: XEP-0084 magic to advertise a new avatar if possible. */
}
@ -185,6 +186,7 @@ ParseeMemberHandler(ParseeData *data, HashMap *event)
Free(full_jid);
}
Free(chat_id);
Free(avatar);
Free(mime);
Free(sha);
Free(jid);
@ -424,7 +426,8 @@ ParseeMessageHandler(ParseeData *data, HashMap *event)
}
else
{
char *name;
char *name, *mime = NULL, *sha = NULL;
char *avatar;
/* Try to find the chat ID */
muc_id = ParseeGetMUCID(data, chat_id);
if (!chat_id)
@ -434,11 +437,16 @@ ParseeMessageHandler(ParseeData *data, HashMap *event)
/* TODO: Avoid using the AS endpoints */
name = ASGetName(data->config, id, m_sender);
Free(JoinMUC(data, event, encoded_from, muc_id, name, NULL));
avatar = ASGetAvatar(data->config, id, sender);
ASGetMIMESHA(data->config, avatar, &mime, &sha);
Free(JoinMUC(data, event, encoded_from, muc_id, name, sha));
to = muc_id;
Free(sha);
Free(mime);
Free(name);
Free(avatar);
}
if (reply_id)
{