merge of 'be3661e1a11e9a54a3f61c29e003e3dfa3722b35' mxit

Thu, 05 May 2011 15:41:38 +0000

author
Andrew Victor <andrew.victor@mxit.com>
date
Thu, 05 May 2011 15:41:38 +0000
branch
mxit
changeset 31836
ca6f93872867
parent 31834
be3661e1a11e (current diff)
parent 31835
ba0a391c3911 (diff)
child 31837
536e09c1b6dc

merge of 'be3661e1a11e9a54a3f61c29e003e3dfa3722b35'
and 'ba0a391c391114508f6c42d34c8fb8a865624afb'

--- a/libpurple/protocols/mxit/protocol.c	Wed May 04 07:21:43 2011 +0000
+++ b/libpurple/protocols/mxit/protocol.c	Thu May 05 15:41:38 2011 +0000
@@ -1907,6 +1907,23 @@
 			/* this is a contact */
 			if ( avatarId )
 				mxit_update_buddy_avatar( session, mxitId, avatarId );
+
+			if ( ( statusMsg ) && ( strlen( statusMsg ) > 0 ) ) {
+				/* update the status message */
+				PurpleBuddy*		buddy	= NULL;
+
+				buddy = purple_find_buddy( session->acc, mxitId );
+				if ( buddy ) {
+					contact = purple_buddy_get_protocol_data( buddy );
+					if ( contact ) {
+						if ( contact->statusMsg )
+							g_free( contact->statusMsg );
+						contact->statusMsg = strdup( statusMsg );
+					}
+				}
+			}
+
+			/* show the profile */
 			mxit_show_profile( session, mxitId, profile );
 			g_free( profile );
 		}
@@ -2099,6 +2116,7 @@
 					if ( contact ) {
 						/* this is an invite (add image to the internal image store) */
 						contact->imgid = purple_imgstore_add_with_id( chunk.data, chunk.length, NULL );
+						/* show the profile */
 						mxit_show_profile( session, chunk.mxitid, contact->profile );
 					}
 					else {
--- a/libpurple/protocols/mxit/roster.c	Wed May 04 07:21:43 2011 +0000
+++ b/libpurple/protocols/mxit/roster.c	Thu May 05 15:41:38 2011 +0000
@@ -474,7 +474,7 @@
 	contact->capabilities = flags;
 
 	/* validate mood */
-	if (( contact->mood < MXIT_MOOD_NONE ) || ( contact->mood > MXIT_MOOD_STRESSED ))
+	if ( ( contact->mood < MXIT_MOOD_NONE ) || ( contact->mood > MXIT_MOOD_STRESSED ) )
 		contact->mood = MXIT_MOOD_NONE;
 
 	g_strlcpy( contact->customMood, customMood, sizeof( contact->customMood ) );
@@ -485,7 +485,7 @@
 		g_free( contact->statusMsg );
 		contact->statusMsg = NULL;
 	}
-	if ( statusMsg[0] != '\0' )
+	if ( ( statusMsg ) && ( statusMsg[0] != '\0' ) )
 		contact->statusMsg = g_markup_escape_text( statusMsg, -1 );
 
 	/* update the buddy's status (reference: "libpurple/prpl.h") */

mercurial