Mercurial > pidgin.yaz
comparison libpurple/conversation.c @ 22815:f67edee0224e
When searching for a conversation, search only in the list of the
specified type of conversation (i.e. IMs or Chats), when appropriate,
instead of the list of all conversations.
author | Sadrul Habib Chowdhury <imadil@gmail.com> |
---|---|
date | Sun, 04 May 2008 03:28:58 +0000 |
parents | 1517d3c763fc |
children | 8c3444f04709 1dd0e007514d |
comparison
equal
deleted
inserted
replaced
22814:2d10cd28aa57 | 22815:f67edee0224e |
---|---|
811 const gchar *name2; | 811 const gchar *name2; |
812 GList *cnv; | 812 GList *cnv; |
813 | 813 |
814 g_return_val_if_fail(name != NULL, NULL); | 814 g_return_val_if_fail(name != NULL, NULL); |
815 | 815 |
816 switch (type) { | |
817 case PURPLE_CONV_TYPE_IM: | |
818 cnv = purple_get_ims(); | |
819 break; | |
820 case PURPLE_CONV_TYPE_CHAT: | |
821 cnv = purple_get_chats(); | |
822 break; | |
823 case PURPLE_CONV_TYPE_ANY: | |
824 cnv = purple_get_conversations(); | |
825 break; | |
826 default: | |
827 g_return_val_if_reached(NULL); | |
828 } | |
829 | |
816 name1 = g_strdup(purple_normalize(account, name)); | 830 name1 = g_strdup(purple_normalize(account, name)); |
817 | 831 |
818 for (cnv = purple_get_conversations(); cnv != NULL; cnv = cnv->next) { | 832 for (; cnv != NULL; cnv = cnv->next) { |
819 c = (PurpleConversation *)cnv->data; | 833 c = (PurpleConversation *)cnv->data; |
820 name2 = purple_normalize(account, purple_conversation_get_name(c)); | 834 name2 = purple_normalize(account, purple_conversation_get_name(c)); |
821 | 835 |
822 if (((type == PURPLE_CONV_TYPE_ANY) || (type == purple_conversation_get_type(c))) && | 836 if ((account == purple_conversation_get_account(c)) && |
823 (account == purple_conversation_get_account(c)) && | |
824 !purple_utf8_strcasecmp(name1, name2)) { | 837 !purple_utf8_strcasecmp(name1, name2)) { |
825 | 838 |
826 break; | 839 break; |
827 } | 840 } |
828 | 841 |