pidgin: eadbcf5f: Correctly fallback to a federated contac...
qulogic at pidgin.im
qulogic at pidgin.im
Sun Feb 5 21:50:42 EST 2012
----------------------------------------------------------------------
Revision: eadbcf5fbf64b540267125fef42d05ea7da50580
Parent: 9fe45819000c530c509c07b7feb29ce9d4ea13b0
Author: qulogic at pidgin.im
Date: 02/05/12 16:53:01
Branch: im.pidgin.pidgin
URL: http://d.pidgin.im/viewmtn/revision/info/eadbcf5fbf64b540267125fef42d05ea7da50580
Changelog:
Correctly fallback to a federated contact if a contact also has a
passport address but that address is not messenger enabled.
Fixes #14641.
Changes against parent 9fe45819000c530c509c07b7feb29ce9d4ea13b0
patched libpurple/protocols/msn/contact.c
-------------- next part --------------
============================================================
--- libpurple/protocols/msn/contact.c a794fa9d8689f0ae66877ecb7e0d7b0e8f9e407e
+++ libpurple/protocols/msn/contact.c 03b4dbe2efc8d811e6e5315744eadf720f67d712
@@ -740,6 +740,20 @@ msn_parse_addressbook_contacts(MsnSessio
}
passportName = xmlnode_get_child(contactInfo, "passportName");
+ if (passportName != NULL) {
+ xmlnode *messenger_user;
+ /* ignore non-messenger contacts */
+ if ((messenger_user = xmlnode_get_child(contactInfo, "isMessengerUser"))) {
+ char *is_messenger_user = xmlnode_get_data(messenger_user);
+
+ if (is_messenger_user && !strcmp(is_messenger_user, "false")) {
+ passportName = NULL;
+ }
+
+ g_free(is_messenger_user);
+ }
+ }
+
if (passportName == NULL) {
xmlnode *emailsNode, *contactEmailNode, *emailNode;
xmlnode *messengerEnabledNode;
@@ -773,19 +787,6 @@ msn_parse_addressbook_contacts(MsnSessio
}
}
} else {
- xmlnode *messenger_user;
- /* ignore non-messenger contacts */
- if ((messenger_user = xmlnode_get_child(contactInfo, "isMessengerUser"))) {
- char *is_messenger_user = xmlnode_get_data(messenger_user);
-
- if (is_messenger_user && !strcmp(is_messenger_user, "false")) {
- g_free(is_messenger_user);
- continue;
- }
-
- g_free(is_messenger_user);
- }
-
passport = xmlnode_get_data(passportName);
}
More information about the Commits
mailing list