comparison libpurple/blist.c @ 20205:859087457089

applied changes from 8075949b7612e77d6eaa5f0d3cbf98f40715f948 through eb1951eba818e1546adcc94663d5ddf24daee725
author Richard Laager <rlaager@wiktel.com>
date Fri, 28 Sep 2007 15:35:18 +0000
parents 44b4e8bd759b
children 28493a27849b
comparison
equal deleted inserted replaced
20204:de68625c4c04 20205:859087457089
841 841
842 if (ops && ops->update) 842 if (ops && ops->update)
843 ops->update(purplebuddylist, (PurpleBlistNode *)buddy); 843 ops->update(purplebuddylist, (PurpleBlistNode *)buddy);
844 } 844 }
845 845
846 static gboolean
847 purple_strings_are_different(const char *one, const char *two)
848 {
849 return !((one && two && g_utf8_collate(one, two) == 0) ||
850 ((one == NULL || *one == '\0') && (two == NULL || *two == '\0')));
851 }
852
846 void purple_blist_alias_contact(PurpleContact *contact, const char *alias) 853 void purple_blist_alias_contact(PurpleContact *contact, const char *alias)
847 { 854 {
848 PurpleBlistUiOps *ops = purple_blist_get_ui_ops(); 855 PurpleBlistUiOps *ops = purple_blist_get_ui_ops();
849 PurpleConversation *conv; 856 PurpleConversation *conv;
850 PurpleBlistNode *bnode; 857 PurpleBlistNode *bnode;
851 char *old_alias; 858 char *old_alias;
852 859
853 g_return_if_fail(contact != NULL); 860 g_return_if_fail(contact != NULL);
854 861
862 if (!purple_strings_are_different(contact->alias, alias))
863 return;
864
855 old_alias = contact->alias; 865 old_alias = contact->alias;
856 866
857 if ((alias != NULL) && (*alias != '\0')) 867 if ((alias != NULL) && (*alias != '\0'))
858 contact->alias = g_strdup(alias); 868 contact->alias = g_strdup(alias);
859 else 869 else
884 PurpleBlistUiOps *ops = purple_blist_get_ui_ops(); 894 PurpleBlistUiOps *ops = purple_blist_get_ui_ops();
885 char *old_alias; 895 char *old_alias;
886 896
887 g_return_if_fail(chat != NULL); 897 g_return_if_fail(chat != NULL);
888 898
899 if (!purple_strings_are_different(chat->alias, alias))
900 return;
901
889 old_alias = chat->alias; 902 old_alias = chat->alias;
890 903
891 if ((alias != NULL) && (*alias != '\0')) 904 if ((alias != NULL) && (*alias != '\0'))
892 chat->alias = g_strdup(alias); 905 chat->alias = g_strdup(alias);
893 else 906 else
909 PurpleConversation *conv; 922 PurpleConversation *conv;
910 char *old_alias; 923 char *old_alias;
911 924
912 g_return_if_fail(buddy != NULL); 925 g_return_if_fail(buddy != NULL);
913 926
927 if (!purple_strings_are_different(buddy->alias, alias))
928 return;
929
914 old_alias = buddy->alias; 930 old_alias = buddy->alias;
915 931
916 if ((alias != NULL) && (*alias != '\0')) 932 if ((alias != NULL) && (*alias != '\0'))
917 buddy->alias = g_strdup(alias); 933 buddy->alias = g_strdup(alias);
918 else 934 else
938 PurpleBlistUiOps *ops = purple_blist_get_ui_ops(); 954 PurpleBlistUiOps *ops = purple_blist_get_ui_ops();
939 PurpleConversation *conv; 955 PurpleConversation *conv;
940 char *old_alias; 956 char *old_alias;
941 957
942 g_return_if_fail(buddy != NULL); 958 g_return_if_fail(buddy != NULL);
959
960 if (!purple_strings_are_different(buddy->server_alias, alias))
961 return;
943 962
944 old_alias = buddy->server_alias; 963 old_alias = buddy->server_alias;
945 964
946 if ((alias != NULL) && (*alias != '\0') && g_utf8_validate(alias, -1, NULL)) 965 if ((alias != NULL) && (*alias != '\0') && g_utf8_validate(alias, -1, NULL))
947 buddy->server_alias = g_strdup(alias); 966 buddy->server_alias = g_strdup(alias);
1425 { 1444 {
1426 PurpleBlistUiOps *ops = purple_blist_get_ui_ops(); 1445 PurpleBlistUiOps *ops = purple_blist_get_ui_ops();
1427 char *old_alias; 1446 char *old_alias;
1428 1447
1429 g_return_if_fail(contact != NULL); 1448 g_return_if_fail(contact != NULL);
1449
1450 if (!purple_strings_are_different(contact->alias, alias))
1451 return;
1430 1452
1431 old_alias = contact->alias; 1453 old_alias = contact->alias;
1432 1454
1433 if ((alias != NULL) && (*alias != '\0')) 1455 if ((alias != NULL) && (*alias != '\0'))
1434 contact->alias = g_strdup(alias); 1456 contact->alias = g_strdup(alias);