fix-nickcolor-memleak.diff
changeset 90 bed5beae28c5
parent 89 ce4c4447dbd4
child 91 51d326d5cb92
--- a/fix-nickcolor-memleak.diff	Sat Nov 07 17:49:58 2015 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,24 +0,0 @@
-# HG changeset patch
-# Parent a70b6bce62ccc3866f844b7a5e4e6bb27309c11f
-Fix memleak on replacing nickcolor rules
-
-diff -r a70b6bce62cc -r 646da4f1d2e1 mcabber/mcabber/screen.c
---- a/mcabber/mcabber/screen.c	Fri Jan 18 11:23:51 2013 +0200
-+++ b/mcabber/mcabber/screen.c	Mon Mar 11 21:45:20 2013 +0200
-@@ -338,11 +338,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);