| 428 purple_contact_info_set_username(PURPLE_CONTACT_INFO(contact), |
428 purple_contact_info_set_username(PURPLE_CONTACT_INFO(contact), |
| 429 stripped); |
429 stripped); |
| 430 purple_contact_manager_add(manager, contact); |
430 purple_contact_manager_add(manager, contact); |
| 431 } |
431 } |
| 432 |
432 |
| 433 member = purple_conversation_members_add_member(new_members, |
433 /* Check if the member is already in the existing members list. |
| 434 PURPLE_CONTACT_INFO(contact), |
434 * This can happen if the user sends a NAMES command and surely |
| 435 FALSE, NULL); |
435 * other ways are possible. */ |
| |
436 member = purple_conversation_members_find_member(existing_members, |
| |
437 PURPLE_CONTACT_INFO(contact)); |
| |
438 |
| |
439 /* If the member doesn't exist, add them. */ |
| |
440 if(!PURPLE_IS_CONVERSATION_MEMBER(member)) { |
| |
441 member = purple_conversation_members_add_member(new_members, |
| |
442 PURPLE_CONTACT_INFO(contact), |
| |
443 FALSE, NULL); |
| |
444 } |
| 436 |
445 |
| 437 purple_ircv3_add_badges_to_member(member, client, nick); |
446 purple_ircv3_add_badges_to_member(member, client, nick); |
| 438 |
447 |
| 439 g_free(stripped); |
448 g_free(stripped); |
| |
449 g_clear_object(&contact); |
| 440 } |
450 } |
| 441 |
451 |
| 442 purple_conversation_members_extend(existing_members, new_members); |
452 purple_conversation_members_extend(existing_members, new_members); |
| 443 } |
453 } |
| 444 |
454 |