# HG changeset patch # User Myhailo Danylenko # Date 1363044182 -7200 # Node ID c1eb683065208aff2de799c65754088a39107942 # Parent dc3b3ac1ba768b774a41c172e2b96130e0c334be Fix memleak on replacing nickcolor rules diff -r dc3b3ac1ba76 -r c1eb68306520 mcabber/mcabber/screen.c --- a/mcabber/mcabber/screen.c Sat Nov 07 12:21:12 2015 +0100 +++ b/mcabber/mcabber/screen.c Tue Mar 12 01:23:02 2013 +0200 @@ -350,11 +350,15 @@ g_free(mnick); } else { nickcolor *nc = g_new(nickcolor, 1); + nickcolor *oc; ensure_string_htable(&nickcolors, NULL); nc->manual = TRUE; nc->color = cl; // Free the struct, if any there already - g_free(g_hash_table_lookup(nickcolors, mnick)); + if ((oc = g_hash_table_lookup(nickcolors, mnick))) { + g_free(oc -> color); + g_free(oc); + } // Save the new ones g_hash_table_replace(nickcolors, mnick, nc); g_hash_table_replace(nickcolors, snick, nc);