comparison 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
comparison
equal deleted inserted replaced
24884:b2f8b1e1e7cc 24885:c6cadb7bdcf7
53 } 53 }
54 54
55 if (!buddy->proto_data) { 55 if (!buddy->proto_data) {
56 /* No MsimUser for this buddy; make one. */ 56 /* No MsimUser for this buddy; make one. */
57 57
58 /* TODO: where is this freed? */
59 user = g_new0(MsimUser, 1); 58 user = g_new0(MsimUser, 1);
60 user->buddy = buddy; 59 user->buddy = buddy;
61 user->id = purple_blist_node_get_int(&buddy->node, "UserID"); 60 user->id = purple_blist_node_get_int((PurpleBlistNode*)buddy, "UserID");
62 buddy->proto_data = (gpointer)user; 61 buddy->proto_data = (gpointer)user;
63 } 62 }
64 63
65 user = (MsimUser *)(buddy->proto_data); 64 user = (MsimUser *)(buddy->proto_data);
66 65
67 return user; 66 return user;
67 }
68
69 void msim_user_free(MsimUser *user)
70 {
71 if (!user)
72 return;
73
74 g_free(user->client_info);
75 g_free(user->gender);
76 g_free(user->location);
77 g_free(user->headline);
78 g_free(user->display_name);
79 g_free(user->username);
80 g_free(user->band_name);
81 g_free(user->song_name);
82 g_free(user->image_url);
83 g_free(user);
68 } 84 }
69 85
70 /** 86 /**
71 * Find and return an MsimUser * representing a user on the buddy list, or NULL. 87 * Find and return an MsimUser * representing a user on the buddy list, or NULL.
72 */ 88 */