diff libpurple/protocols/msn/contact.c @ 20447:18ecdee88ed0

Add Pending list to recognized lists during contact list parsing Don't try pushing Reverse or Pending lists to notification server Improvements to detecting Yahoo users so Passports with @yahoo.com addresses will work better. Fixes #1331
author Stu Tomlinson <stu@nosnilmot.com>
date Mon, 28 May 2007 16:12:25 +0000
parents a1c6206f0205
children 46437bdf316b
line wrap: on
line diff
--- a/libpurple/protocols/msn/contact.c	Mon May 28 02:20:41 2007 +0000
+++ b/libpurple/protocols/msn/contact.c	Mon May 28 16:12:25 2007 +0000
@@ -96,6 +96,8 @@
 		return MSN_LIST_BL_OP;
 	}else if(!strcmp(role,"Reverse")){
 		return MSN_LIST_RL_OP;
+	}else if(!strcmp(role,"Pending")){
+		return MSN_LIST_PL_OP;
 	}
 	return 0;
 }
@@ -340,6 +342,7 @@
 		xmlnode *contactId,*contactInfo,*contactType,*passportName,*displayName,*guid;
 		xmlnode *groupIds;
 		MsnUser *user;
+		MsnUserType usertype;
 		char *passport,*Name,*uid,*type;
 
 		passport = NULL;
@@ -359,7 +362,7 @@
 			g_free(friendly);
 			continue; /* Not adding own account as buddy to buddylist */
 		}
-
+		usertype = msn_get_user_type(type);
 		passportName = xmlnode_get_child(contactInfo,"passportName");
 		if(passportName == NULL){
 			xmlnode *emailsNode, *contactEmailNode, *emailNode;
@@ -385,6 +388,7 @@
 					emailNode = xmlnode_get_child(contactEmailNode,"email");
 					passport = xmlnode_get_data(emailNode);
 					purple_debug_info("MsnAB","Yahoo User %s\n",passport);
+					usertype = MSN_USER_TYPE_YAHOO;
 					break;
 				}else{
 					/*TODO maybe we can just ignore it in Purple?*/
@@ -414,7 +418,7 @@
 
 		user = msn_userlist_find_add_user(session->userlist, passport,Name);
 		msn_user_set_uid(user,uid);
-		msn_user_set_type(user,msn_get_user_type(type));
+		msn_user_set_type(user, usertype);
 		g_free(Name);
 		g_free(passport);
 		g_free(uid);