comparison libpurple/protocols/msn/user.c @ 31321:b7b2b1f81aa0

Normalize both passports before comparation. This fixes the bug that opens a MUC with a buddy that is logged in on mutiple endpoints.
author masca@cpw.pidgin.im
date Wed, 22 Sep 2010 21:09:50 +0000
parents 1f16cfce4718
children 4ba00731d066
comparison
equal deleted inserted replaced
31320:c0337902d62a 31321:b7b2b1f81aa0
733 **************************************************************************/ 733 **************************************************************************/
734 734
735 int 735 int
736 msn_user_passport_cmp(MsnUser *user, const char *passport) 736 msn_user_passport_cmp(MsnUser *user, const char *passport)
737 { 737 {
738 const char *pass; 738 const char *str;
739 739 char *pass;
740 pass = purple_normalize_nocase(NULL, msn_user_get_passport(user)); 740 int result;
741 741
742 return strcmp(pass, purple_normalize_nocase(NULL, passport)); 742 str = purple_normalize_nocase(NULL, msn_user_get_passport(user));
743 pass = g_strdup(str);
744
745 result = g_strcmp0(pass, purple_normalize_nocase(NULL, passport));
746 g_free(pass);
747
748 return result;
743 } 749 }
744 750
745 gboolean 751 gboolean
746 msn_user_is_in_group(MsnUser *user, const char * group_id) 752 msn_user_is_in_group(MsnUser *user, const char * group_id)
747 { 753 {