# HG changeset patch # User andrew.victor@mxit.com # Date 1304610098 0 # Node ID 807860d518a6db9054f3ebc78d5a1f367e77d149 # Parent bb4eaf8e70d6fe886a0eca46f1047e307477745d# Parent 36a569ed9cdba52a1afc7f4a1690938ad8e12715 merge of '68f430dcc865c17bad99e7e29c516f5db7cb4336' and 'f6e1d9574fc2a18944c8b9977aa15586a06728e8' diff -r bb4eaf8e70d6 -r 807860d518a6 libpurple/protocols/mxit/protocol.c --- 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 { diff -r bb4eaf8e70d6 -r 807860d518a6 libpurple/protocols/mxit/roster.c --- 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") */