From 41267ae1c506310ff2f402ed0fefe98f91af8b59 Mon Sep 17 00:00:00 2001 From: Michael Vetter Date: Mon, 22 Jul 2019 14:42:43 +0200 Subject: [PATCH] Fix memory leak in roster_update() current_name should not be const and should be freed. --- src/xmpp/roster_list.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/xmpp/roster_list.c b/src/xmpp/roster_list.c index 88c3ec0f..4df7d865 100644 --- a/src/xmpp/roster_list.c +++ b/src/xmpp/roster_list.c @@ -304,13 +304,14 @@ roster_update(const char *const barejid, const char *const name, GSList *groups, p_contact_set_pending_out(contact, pending_out); const char * const new_name = name; - const char * current_name = NULL; + char * current_name = NULL; if (p_contact_name(contact)) { current_name = strdup(p_contact_name(contact)); } p_contact_set_name(contact, new_name); _replace_name(current_name, new_name, barejid); + free(current_name); GSList *curr_new_group = groups; while (curr_new_group) {