diff libpurple/protocols/myspace/user.c @ 24885:c6cadb7bdcf7

A couple of memory leak fixes.
author Sadrul Habib Chowdhury <imadil@gmail.com>
date Thu, 01 Jan 2009 03:12:56 +0000
parents 1d77f138847b
children ae544623840b c0b42d6c2785
line wrap: on
line diff
--- a/libpurple/protocols/myspace/user.c	Thu Jan 01 01:04:34 2009 +0000
+++ b/libpurple/protocols/myspace/user.c	Thu Jan 01 03:12:56 2009 +0000
@@ -55,10 +55,9 @@
 	if (!buddy->proto_data) {
 		/* No MsimUser for this buddy; make one. */
 
-		/* TODO: where is this freed? */
 		user = g_new0(MsimUser, 1);
 		user->buddy = buddy;
-		user->id = purple_blist_node_get_int(&buddy->node, "UserID");
+		user->id = purple_blist_node_get_int((PurpleBlistNode*)buddy, "UserID");
 		buddy->proto_data = (gpointer)user;
 	}
 
@@ -67,6 +66,23 @@
 	return user;
 }
 
+void msim_user_free(MsimUser *user)
+{
+	if (!user)
+		return;
+
+	g_free(user->client_info);
+	g_free(user->gender);
+	g_free(user->location);
+	g_free(user->headline);
+	g_free(user->display_name);
+	g_free(user->username);
+	g_free(user->band_name);
+	g_free(user->song_name);
+	g_free(user->image_url);
+	g_free(user);
+}
+
 /**
  * Find and return an MsimUser * representing a user on the buddy list, or NULL.
  */