Mercurial > pidgin
changeset 26798:afc3ec89e83b
Revert the partial hack for ejabberd 2.0.0. See comment in code.
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Sun, 03 May 2009 18:51:11 +0000 |
parents | 50edd9c80577 |
children | ea2306f2f886 |
files | libpurple/protocols/jabber/useravatar.c |
diffstat | 1 files changed, 18 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/libpurple/protocols/jabber/useravatar.c Sun May 03 18:50:20 2009 +0000 +++ b/libpurple/protocols/jabber/useravatar.c Sun May 03 18:51:11 2009 +0000 @@ -45,6 +45,9 @@ static void remove_avatar_0_12_nodes(JabberStream *js) { +#if 0 + See note below for why this is #if 0'd + /* Publish an empty avatar according to the XEP-0084 v0.12 semantics */ xmlnode *publish, *item, *metadata; /* publish the metadata */ @@ -61,16 +64,26 @@ /* publish */ jabber_pep_publish(js, publish); +#endif /* - * This causes ejabberd 2.0.0 to RST our connection unceremoniously, - * so disable it for now (we publish a <stop/> to the metadata node - * instead. + * This causes ejabberd 2.0.0 to kill the connection unceremoniously. + * See https://support.process-one.net/browse/EJAB-623. When adiumx.com + * was upgraded, the issue went away. + * + * I think it makes a lot of sense to not have an avatar at the old + * node instead of having something interpreted as "no avatar". When + * a contact with an older client logs in, in the latter situation, + * there's a race between interpreting the <presence/> vcard-temp:x:update + * avatar (non-empty) and the XEP-0084 v0.12 avatar (empty, so show no + * avatar for the buddy) which leads to unhappy and confused users. + * + * A deluge of frustrating "Read error" bug reports may change my mind + * about this. + * --darkrain42 */ -#if 0 jabber_pep_delete_node(js, NS_AVATAR_0_12_METADATA); jabber_pep_delete_node(js, NS_AVATAR_0_12_DATA); -#endif } void jabber_avatar_set(JabberStream *js, PurpleStoredImage *img)