src/protocols/msn/msn.c

changeset 6789
a1f3aa200bf8
parent 6787
7d8e0ba98f68
child 6801
98b3b2a3be1b
equal deleted inserted replaced
6788:26d148d26f2f 6789:a1f3aa200bf8
640 640
641 static void 641 static void
642 msn_add_buddy(GaimConnection *gc, const char *name, GaimGroup *group) 642 msn_add_buddy(GaimConnection *gc, const char *name, GaimGroup *group)
643 { 643 {
644 MsnSession *session = gc->proto_data; 644 MsnSession *session = gc->proto_data;
645 MsnGroup *msn_group = NULL;
645 char *who; 646 char *who;
646 char outparams[MSN_BUF_LEN]; 647 char outparams[MSN_BUF_LEN];
647 GSList *l; 648 GSList *l;
648 649
649 who = msn_normalize(name); 650 who = msn_normalize(name);
661 } 662 }
662 663
663 if (l != NULL) 664 if (l != NULL)
664 return; 665 return;
665 666
666 g_snprintf(outparams, sizeof(outparams), 667 if (group != NULL)
667 "FL %s %s", who, who); 668 msn_group = msn_groups_find_with_name(session->groups, group->name);
669
670 if (msn_group != NULL)
671 {
672 g_snprintf(outparams, sizeof(outparams),
673 "FL %s %s %d", who, who, msn_group_get_id(msn_group));
674 }
675 else
676 {
677 g_snprintf(outparams, sizeof(outparams),
678 "FL %s %s", who, who);
679 }
668 680
669 if (!msn_servconn_send_command(session->notification_conn, 681 if (!msn_servconn_send_command(session->notification_conn,
670 "ADD", outparams)) { 682 "ADD", outparams))
683 {
671 gaim_connection_error(gc, _("Write error")); 684 gaim_connection_error(gc, _("Write error"));
672 return; 685 return;
673 } 686 }
674 } 687 }
675 688

mercurial