diff src/blist.c @ 7162:d14e026611c0

[gaim-migrate @ 7729] constificating the countryside committer: Tailor Script <tailor@pidgin.im>
author Nathan Walp <nwalp@pidgin.im>
date Sun, 05 Oct 2003 18:32:43 +0000
parents d4bb24ecc6aa
children 747b9e00ef60
line wrap: on
line diff
--- a/src/blist.c	Sun Oct 05 17:51:09 2003 +0000
+++ b/src/blist.c	Sun Oct 05 18:32:43 2003 +0000
@@ -681,10 +681,11 @@
 
 		if(bnode->parent->parent != (GaimBlistNode*)g) {
 			hb = g_new(struct _gaim_hbuddy, 1);
-			hb->name = gaim_normalize(buddy->name);
+			hb->name = g_strdup(gaim_normalize(buddy->name));
 			hb->account = buddy->account;
 			hb->group = bnode->parent->parent;
 			g_hash_table_remove(gaimbuddylist->buddies, hb);
+			g_free(hb->name);
 			g_free(hb);
 		}
 
@@ -1033,10 +1034,11 @@
 	}
 
 
-	hb.name = gaim_normalize(buddy->name);
+	hb.name = g_strdup(gaim_normalize(buddy->name));
 	hb.account = buddy->account;
 	hb.group = ((GaimBlistNode*)buddy)->parent->parent;
 	g_hash_table_remove(gaimbuddylist->buddies, &hb);
+	g_free(hb.name);
 
 	if(buddy->timer > 0)
 		g_source_remove(buddy->timer);
@@ -1202,15 +1204,18 @@
 	if (!name)
 		return NULL;
 
-	hb.name = gaim_normalize(name);
+	hb.name = g_strdup(gaim_normalize(name));
 	hb.account = account;
 
 	for(group = gaimbuddylist->root; group; group = group->next) {
 		hb.group = group;
-		if ((buddy = g_hash_table_lookup(gaimbuddylist->buddies, &hb)) != NULL)
+		if ((buddy = g_hash_table_lookup(gaimbuddylist->buddies, &hb))) {
+			g_free(hb.name);
 			return buddy;
+		}
 	}
 
+	g_free(hb.name);
 	return NULL;
 }
 
@@ -1218,6 +1223,7 @@
 		GaimGroup *group)
 {
 	struct _gaim_hbuddy hb;
+	GaimBuddy *ret;
 
 	if (!gaimbuddylist)
 		return NULL;
@@ -1225,11 +1231,13 @@
 	if (!name)
 		return NULL;
 
-	hb.name = gaim_normalize(name);
+	hb.name = g_strdup(gaim_normalize(name));
 	hb.account = account;
 	hb.group = (GaimBlistNode*)group;
 
-	return g_hash_table_lookup(gaimbuddylist->buddies, &hb);
+	ret = g_hash_table_lookup(gaimbuddylist->buddies, &hb);
+	g_free(hb.name);
+	return ret;
 }
 
 GSList *gaim_find_buddies(GaimAccount *account, const char *name)
@@ -1245,7 +1253,7 @@
 	if (!name)
 		return NULL;
 
-	hb.name = gaim_normalize(name);
+	hb.name = g_strdup(gaim_normalize(name));
 	hb.account = account;
 
 	for(group = gaimbuddylist->root; group; group = group->next) {
@@ -1254,6 +1262,7 @@
 			ret = g_slist_append(ret, buddy);
 	}
 
+	g_free(hb.name);
 	return ret;
 }