# HG changeset patch # User Stu Tomlinson # Date 1212176746 0 # Node ID a67467e5a586222c0f1649a0c231d4f17758d918 # Parent b020c310355af7f380ad585a820c74a2957a1b91# Parent 4f49d4b25e240b89e053a25965133fa769525698 merge of '6c9b241a178cbf5a0760ba9646e0460067db378a' and 'ab66445eb86efd6fff03037f48de889122a2b07d' diff -r b020c310355a -r a67467e5a586 libpurple/protocols/jabber/buddy.c --- a/libpurple/protocols/jabber/buddy.c Fri May 30 19:26:10 2008 +0000 +++ b/libpurple/protocols/jabber/buddy.c Fri May 30 19:45:46 2008 +0000 @@ -824,10 +824,14 @@ } if(jbr) { char *purdy = NULL; + char *status_name = jabber_buddy_state_get_name(jbr->state); if(jbr->status) purdy = purple_strdup_withhtml(jbr->status); - tmp = g_strdup_printf("%s%s%s", jabber_buddy_state_get_name(jbr->state), - (purdy ? ": " : ""), + if(status_name && purdy && !strcmp(status_name, purdy)) + status_name = NULL; + + tmp = g_strdup_printf("%s%s%s", (status_name ? status_name : ""), + ((status_name && purdy) ? ": " : ""), (purdy ? purdy : "")); purple_notify_user_info_prepend_pair(user_info, _("Status"), tmp); g_free(tmp); @@ -963,7 +967,8 @@ gboolean multiple_resources = jbi->jb->resources && (g_list_length(jbi->jb->resources) > 1); for(resources = jbi->jb->resources; resources; resources = resources->next) { - char *purdy = NULL; + char *purdy = NULL, *status_name = NULL; + jbr = resources->data; if(jbr->client.name) { @@ -987,10 +992,14 @@ } } + status_name = jabber_buddy_state_get_name(jbr->state); if(jbr->status) purdy = purple_strdup_withhtml(jbr->status); - tmp = g_strdup_printf("%s%s%s", jabber_buddy_state_get_name(jbr->state), - (purdy ? ": " : ""), + if(status_name && purdy && !strcmp(status_name, purdy)) + status_name = NULL; + + tmp = g_strdup_printf("%s%s%s", (status_name ? status_name : ""), + ((status_name && purdy) ? ": " : ""), (purdy ? purdy : "")); purple_notify_user_info_prepend_pair(user_info, _("Status"), tmp); g_free(tmp);