# HG changeset patch # User Ma Yuan # Date 1157650345 0 # Node ID b821d5551c30a6cf8b724607e2a7d1ff8693939f # Parent d99e36279d41554af0fb1b646a4fec981a8b9488 [gaim-migrate @ 17182] change to fix the process of Phone Member TODO: need to support Phone user later committed by MaYuan committer: Ethan Blanton diff -r d99e36279d41 -r b821d5551c30 src/protocols/msn/contact.c --- a/src/protocols/msn/contact.c Wed Sep 06 16:14:22 2006 +0000 +++ b/src/protocols/msn/contact.c Thu Sep 07 17:32:25 2006 +0000 @@ -134,10 +134,9 @@ session = contact->session; gaim_debug_misc("xml","parse contact list:{%s}\nsize:%d\n",contact->soapconn->body,contact->soapconn->body_len); node = xmlnode_from_str(contact->soapconn->body, contact->soapconn->body_len); -// node = xmlnode_from_str(contact->soapconn->body, -1); if(node == NULL){ - gaim_debug_misc("xml","parse from str err!\n"); + gaim_debug_misc("xml","parse contact from str err!\n"); return; } gaim_debug_misc("xml","node{%p},name:%s,child:%s,last:%s\n",node,node->name,node->child->name,node->lastchild->name); @@ -333,6 +332,7 @@ g_free(group_id); /*Process contact List*/ + gaim_debug_info("MSNAB","process contact list...\n"); contacts =xmlnode_get_child(result,"contacts"); for(contactNode = xmlnode_get_child(contacts, "Contact"); contactNode; contactNode = xmlnode_get_next_twin(contactNode)){ @@ -365,6 +365,10 @@ /*TODO: add it to the none-instant Messenger group and recognize as email Membership*/ /*Yahoo User?*/ emailsNode = xmlnode_get_child(contactInfo,"emails"); + if(emailsNode == NULL){ + /*TODO: need to support the Mobile type*/ + continue; + } for(contactEmailNode = xmlnode_get_child(emailsNode,"ContactEmail");contactEmailNode; contactEmailNode = xmlnode_get_next_twin(contactEmailNode) ){ messengerEnabledNode = xmlnode_get_child(contactEmailNode,"isMessengerEnabled"); @@ -408,16 +412,12 @@ msn_user_set_uid(user,uid); msn_user_set_type(user,msn_get_user_type(type)); user->list_op |= MSN_LIST_FL_OP; - gaim_debug_info("MsnAB","prepare to free Name...\n"); g_free(Name); - gaim_debug_info("MsnAB","prepare to free passport...\n"); g_free(passport); - gaim_debug_info("MsnAB","prepare to free uid...\n"); g_free(uid); - gaim_debug_info("MsnAB","prepare to free type...\n"); g_free(type); - gaim_debug_misc("MsnAB","prepare for guid parse...\n"); + gaim_debug_misc("MsnAB","parse guid...\n"); groupIds = xmlnode_get_child(contactInfo,"groupIds"); if(groupIds){ for(guid = xmlnode_get_child(groupIds, "guid");guid; @@ -439,7 +439,7 @@ if(abNode != NULL){ LastChangeNode = xmlnode_get_child(abNode,"lastChange"); lastchange = xmlnode_get_data(LastChangeNode); - gaim_debug_info("MsnAB"," lastchange:{%s}\n",lastchange); + gaim_debug_info("MsnAB"," lastchanged Time:{%s}\n",lastchange); } xmlnode_free(node);