Mercurial > pidgin.yaz
changeset 23436:3f80020106e6
merge of '1128e8852303548fa7e11f94813fb137fde16744'
and 'ffcb4d5cb92af02af4c4fbac964ac5699071d29a'
author | Mark Schneider <queueram@gmail.com> |
---|---|
date | Sun, 06 Jul 2008 17:54:14 +0000 |
parents | 74960bf43dae (diff) 2f8866314c64 (current diff) |
children | 1fcdc7d11f38 |
files | |
diffstat | 1 files changed, 7 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/libpurple/protocols/jabber/presence.c Fri Jul 04 21:56:30 2008 +0000 +++ b/libpurple/protocols/jabber/presence.c Sun Jul 06 17:54:14 2008 +0000 @@ -141,6 +141,11 @@ /* check for buzz support */ allowBuzz = purple_status_get_attr_boolean(status,"buzz"); /* changing the buzz state has to trigger a re-broadcasting of the presence for caps */ + + if (js->googletalk && stripped == NULL && purple_presence_is_status_primitive_active(p, PURPLE_STATUS_TUNE)) { + tune = purple_presence_get_status(p, "tune"); + stripped = jabber_google_presence_outgoing(tune); + } #define CHANGED(a,b) ((!a && b) || (a && a[0] == '\0' && b && b[0] != '\0') || \ (a && !b) || (a && a[0] != '\0' && b && b[0] == '\0') || (a && b && strcmp(a,b))) @@ -149,11 +154,6 @@ js->old_priority != priority || CHANGED(js->old_avatarhash, js->avatar_hash)) { js->allowBuzz = allowBuzz; - if (js->googletalk && stripped == NULL && purple_presence_is_status_primitive_active(p, PURPLE_STATUS_TUNE)) { - tune = purple_presence_get_status(p, "tune"); - stripped = jabber_google_presence_outgoing(tune); - } - presence = jabber_presence_create_js(js, state, stripped, priority); if(js->avatar_hash) { @@ -178,9 +178,9 @@ js->old_avatarhash = g_strdup(js->avatar_hash); js->old_state = state; js->old_priority = priority; - g_free(stripped); } - + g_free(stripped); + /* next, check if there are any changes to the tune values */ tune = purple_presence_get_status(p, "tune"); if (tune && purple_status_is_active(tune)) {