libpurple/protocols/msn/notification.c

branch
cpw.qulogic.msnp16
changeset 29423
b96a7dc3fece
parent 29421
4259f9512ab4
child 29424
128030df4d7c
--- a/libpurple/protocols/msn/notification.c	Wed Dec 09 21:08:24 2009 +0000
+++ b/libpurple/protocols/msn/notification.c	Wed Dec 09 21:09:14 2009 +0000
@@ -1291,7 +1291,8 @@
 	PurpleConnection *gc;
 	MsnUser *user;
 	MsnObject *msnobj;
-	unsigned long clientid;
+	unsigned long clientid, extcaps;
+	char *extcap_str;
 	int networkid;
 	const char *state, *passport, *friendly;
 
@@ -1322,10 +1323,15 @@
 		msn_user_set_object(user, NULL);
 	}
 
-	clientid = strtoul(cmd->params[4], NULL, 10);
+	clientid = strtoul(cmd->params[4], &extcap_str, 10);
+	if (extcap_str && *extcap_str)
+		extcaps = strtoul(extcap_str+1, NULL, 10);
+	else
+		extcaps = 0;
 	user->mobile = (clientid & MSN_CLIENT_CAP_MSNMOBILE) || (user->phone.mobile && user->phone.mobile[0] == '+');
 
 	msn_user_set_clientid(user, clientid);
+	msn_user_set_extcaps(user, extcaps);
 	msn_user_set_network(user, networkid);
 
 	msn_user_set_state(user, state);

mercurial