comparison mcabber/src/roster.c @ 774:46304b773a44

Remove useless checks before g_free() calls
author Mikael Berthe <mikael@lilotux.net>
date Sat, 25 Mar 2006 18:16:10 +0100
parents 464be13343a9
children 25022410f80f
comparison
equal deleted inserted replaced
773:e25b8a348ebd 774:46304b773a44
97 GSList *lip; 97 GSList *lip;
98 res *p_res; 98 res *p_res;
99 99
100 for ( lip = *reslist; lip ; lip = g_slist_next(lip)) { 100 for ( lip = *reslist; lip ; lip = g_slist_next(lip)) {
101 p_res = (res*)lip->data; 101 p_res = (res*)lip->data;
102 if (p_res->status_msg) { 102 g_free((gchar*)p_res->status_msg);
103 g_free((gchar*)p_res->status_msg); 103 g_free((gchar*)p_res->name);
104 } 104 g_free((gchar*)p_res->realjid);
105 if (p_res->name) {
106 g_free((gchar*)p_res->name);
107 }
108 if (p_res->realjid) {
109 g_free((gchar*)p_res->realjid);
110 }
111 } 105 }
112 // Free all nodes but the first (which is static) 106 // Free all nodes but the first (which is static)
113 g_slist_free(*reslist); 107 g_slist_free(*reslist);
114 *reslist = NULL; 108 *reslist = NULL;
115 } 109 }
189 183
190 if (!p_res_elt) return; // Resource not found 184 if (!p_res_elt) return; // Resource not found
191 185
192 p_res = p_res_elt->data; 186 p_res = p_res_elt->data;
193 // Free allocations and delete resource node 187 // Free allocations and delete resource node
194 if (p_res->name) g_free(p_res->name); 188 g_free(p_res->name);
195 if (p_res->status_msg) g_free(p_res->status_msg); 189 g_free(p_res->status_msg);
196 if (p_res->realjid) g_free(p_res->realjid); 190 g_free(p_res->realjid);
197 rost->resource = g_slist_delete_link(rost->resource, p_res_elt); 191 rost->resource = g_slist_delete_link(rost->resource, p_res_elt);
198 return; 192 return;
199 } 193 }
200 194
201 195
364 // If there is a pending unread message, keep track of it 358 // If there is a pending unread message, keep track of it
365 if (roster_usr->flags & ROSTER_FLAG_MSG) 359 if (roster_usr->flags & ROSTER_FLAG_MSG)
366 unread_jid_add(roster_usr->jid); 360 unread_jid_add(roster_usr->jid);
367 361
368 // Let's free memory (jid, name, status message) 362 // Let's free memory (jid, name, status message)
369 if (roster_usr->jid) g_free((gchar*)roster_usr->jid); 363 g_free((gchar*)roster_usr->jid);
370 if (roster_usr->name) g_free((gchar*)roster_usr->name); 364 g_free((gchar*)roster_usr->name);
371 if (roster_usr->nickname) g_free((gchar*)roster_usr->nickname); 365 g_free((gchar*)roster_usr->nickname);
372 if (roster_usr->topic) g_free((gchar*)roster_usr->topic); 366 g_free((gchar*)roster_usr->topic);
373 free_all_resources(&roster_usr->resource); 367 free_all_resources(&roster_usr->resource);
374 g_free(roster_usr); 368 g_free(roster_usr);
375 369
376 // That's a little complex, we need to dereference twice 370 // That's a little complex, we need to dereference twice
377 sl_group = ((roster*)sl_user->data)->list; 371 sl_group = ((roster*)sl_user->data)->list;
406 roster *roster_usr = (roster*)sl_usr->data; 400 roster *roster_usr = (roster*)sl_usr->data;
407 // If there is a pending unread message, keep track of it 401 // If there is a pending unread message, keep track of it
408 if (roster_usr->flags & ROSTER_FLAG_MSG) 402 if (roster_usr->flags & ROSTER_FLAG_MSG)
409 unread_jid_add(roster_usr->jid); 403 unread_jid_add(roster_usr->jid);
410 // Free name and jid 404 // Free name and jid
411 if (roster_usr->jid) g_free((gchar*)roster_usr->jid); 405 g_free((gchar*)roster_usr->jid);
412 if (roster_usr->name) g_free((gchar*)roster_usr->name); 406 g_free((gchar*)roster_usr->name);
413 if (roster_usr->nickname) g_free((gchar*)roster_usr->nickname); 407 g_free((gchar*)roster_usr->nickname);
414 if (roster_usr->topic) g_free((gchar*)roster_usr->topic); 408 g_free((gchar*)roster_usr->topic);
415 free_all_resources(&roster_usr->resource); 409 free_all_resources(&roster_usr->resource);
416 g_free(roster_usr); 410 g_free(roster_usr);
417 sl_usr = g_slist_next(sl_usr); 411 sl_usr = g_slist_next(sl_usr);
418 } 412 }
419 // Free group's users list 413 // Free group's users list
420 if (roster_grp->list) 414 if (roster_grp->list)
421 g_slist_free(roster_grp->list); 415 g_slist_free(roster_grp->list);
422 // Free group's name and jid 416 // Free group's name and jid
423 if (roster_grp->jid) g_free((gchar*)roster_grp->jid); 417 g_free((gchar*)roster_grp->jid);
424 if (roster_grp->name) g_free((gchar*)roster_grp->name); 418 g_free((gchar*)roster_grp->name);
425 g_free(roster_grp); 419 g_free(roster_grp);
426 sl_grp = g_slist_next(sl_grp); 420 sl_grp = g_slist_next(sl_grp);
427 } 421 }
428 // Free groups list 422 // Free groups list
429 if (groups) { 423 if (groups) {
801 *sl_group = g_slist_remove(*sl_group, rosterdata); 795 *sl_group = g_slist_remove(*sl_group, rosterdata);
802 796
803 // Remove old group if it is empty 797 // Remove old group if it is empty
804 if (!*sl_group) { 798 if (!*sl_group) {
805 roster *roster_grp = (roster*)((GSList*)roster_usr->list)->data; 799 roster *roster_grp = (roster*)((GSList*)roster_usr->list)->data;
806 if (roster_grp->jid) g_free((gchar*)roster_grp->jid); 800 g_free((gchar*)roster_grp->jid);
807 if (roster_grp->name) g_free((gchar*)roster_grp->name); 801 g_free((gchar*)roster_grp->name);
808 g_free(roster_grp); 802 g_free(roster_grp);
809 groups = g_slist_remove(groups, roster_grp); 803 groups = g_slist_remove(groups, roster_grp);
810 } 804 }
811 805
812 // Add the buddy to its new group 806 // Add the buddy to its new group