comparison libpurple/protocols/jabber/roster.c @ 20848:05f525c8f192

Fix CID 312 (Dead code).
author Daniel Atallah <daniel.atallah@gmail.com>
date Tue, 09 Oct 2007 21:27:29 +0000
parents 3de6fbc79134
children b77d000b738b
comparison
equal deleted inserted replaced
20847:be363a3c618f 20848:05f525c8f192
401 } 401 }
402 402
403 void jabber_roster_remove_buddy(PurpleConnection *gc, PurpleBuddy *buddy, 403 void jabber_roster_remove_buddy(PurpleConnection *gc, PurpleBuddy *buddy,
404 PurpleGroup *group) { 404 PurpleGroup *group) {
405 GSList *buddies = purple_find_buddies(gc->account, buddy->name); 405 GSList *buddies = purple_find_buddies(gc->account, buddy->name);
406 GSList *groups = NULL;
407 406
408 buddies = g_slist_remove(buddies, buddy); 407 buddies = g_slist_remove(buddies, buddy);
409 if(buddies != NULL) { 408 if(buddies != NULL) {
410 PurpleBuddy *tmpbuddy; 409 PurpleBuddy *tmpbuddy;
411 PurpleGroup *tmpgroup; 410 PurpleGroup *tmpgroup;
411 GSList *groups = NULL;
412 412
413 while(buddies) { 413 while(buddies) {
414 tmpbuddy = buddies->data; 414 tmpbuddy = buddies->data;
415 tmpgroup = purple_buddy_get_group(tmpbuddy); 415 tmpgroup = purple_buddy_get_group(tmpbuddy);
416 groups = g_slist_append(groups, tmpgroup->name); 416 groups = g_slist_append(groups, tmpgroup->name);
417 buddies = g_slist_remove(buddies, tmpbuddy); 417 buddies = g_slist_remove(buddies, tmpbuddy);
418 } 418 }
419 419
420 jabber_roster_update(gc->proto_data, buddy->name, groups); 420 jabber_roster_update(gc->proto_data, buddy->name, groups);
421 g_slist_free(groups);
421 } else { 422 } else {
422 JabberIq *iq = jabber_iq_new_query(gc->proto_data, JABBER_IQ_SET, 423 JabberIq *iq = jabber_iq_new_query(gc->proto_data, JABBER_IQ_SET,
423 "jabber:iq:roster"); 424 "jabber:iq:roster");
424 xmlnode *query = xmlnode_get_child(iq->node, "query"); 425 xmlnode *query = xmlnode_get_child(iq->node, "query");
425 xmlnode *item = xmlnode_new_child(query, "item"); 426 xmlnode *item = xmlnode_new_child(query, "item");
427 xmlnode_set_attrib(item, "jid", buddy->name); 428 xmlnode_set_attrib(item, "jid", buddy->name);
428 xmlnode_set_attrib(item, "subscription", "remove"); 429 xmlnode_set_attrib(item, "subscription", "remove");
429 430
430 jabber_iq_send(iq); 431 jabber_iq_send(iq);
431 } 432 }
432 433 }
433 if(buddies)
434 g_slist_free(buddies);
435 if(groups)
436 g_slist_free(groups);
437 }