void yahoo_c_leave(PurpleConnection *gc, int id) { YahooData *yd = purple_connection_get_protocol_data(gc); PurpleChatConversation *c; if (!yd) return; c = purple_conversations_find_chat(gc, id); if (!c) return; if (id != YAHOO_CHAT_ID) { GList *users; users = purple_chat_conversation_get_users(c); yahoo_conf_leave(yd, purple_conversation_get_name(PURPLE_CONVERSATION(c)), purple_connection_get_display_name(gc), users); g_list_free(users); yd->confs = g_slist_remove(yd->confs, c); } else { yahoo_chat_leave(gc, purple_conversation_get_name(PURPLE_CONVERSATION(c)), purple_connection_get_display_name(gc), TRUE); } purple_serv_got_chat_left(gc, id); }
void yahoo_c_leave(GaimConnection *gc, int id) { struct yahoo_data *yd = (struct yahoo_data *) gc->proto_data; GaimConversation *c; if (!yd) return; c = gaim_find_chat(gc, id); if (!c) return; if (id != YAHOO_CHAT_ID) { yahoo_conf_leave(yd, gaim_conversation_get_name(c), gaim_connection_get_display_name(gc), gaim_conv_chat_get_users(GAIM_CONV_CHAT(c))); yd->confs = g_slist_remove(yd->confs, c); } else { yahoo_chat_leave(gc, gaim_conversation_get_name(c), gaim_connection_get_display_name(gc), TRUE); } serv_got_chat_left(gc, id); }
void yahoo_c_leave(PurpleConnection *gc, int id) { YahooData *yd = (YahooData *) gc->proto_data; PurpleConversation *c; if (!yd) return; c = purple_find_chat(gc, id); if (!c) return; if (id != YAHOO_CHAT_ID) { yahoo_conf_leave(yd, purple_conversation_get_name(c), purple_connection_get_display_name(gc), purple_conv_chat_get_users(PURPLE_CONV_CHAT(c))); yd->confs = g_slist_remove(yd->confs, c); } else { yahoo_chat_leave(gc, purple_conversation_get_name(c), purple_connection_get_display_name(gc), TRUE); } serv_got_chat_left(gc, id); }