Tue, 28 Apr 2009 01:04:14 +0000
Don't try to process PEP events if it's not <message type='event'/>
I don't know why, but my personal account was receiving about 15
error responses from my Google Talk account's previously connected
resources (service-unavailable errors) and Pidgin was treating those as
legitimate notifications of events from the remote end, which is wrong.
| libpurple/protocols/jabber/pep.c | file | annotate | diff | comparison | revisions |
--- a/libpurple/protocols/jabber/pep.c Mon Apr 27 23:08:29 2009 +0000 +++ b/libpurple/protocols/jabber/pep.c Tue Apr 28 01:04:14 2009 +0000 @@ -98,7 +98,12 @@ /* this may be called even when the own server doesn't support pep! */ JabberPEPHandler *jph; GList *itemslist; - char *jid = jabber_get_bare_jid(jm->from); + char *jid; + + if (jm->type != JABBER_MESSAGE_EVENT) + return; + + jid = jabber_get_bare_jid(jm->from); for(itemslist = jm->eventitems; itemslist; itemslist = itemslist->next) { xmlnode *items = (xmlnode*)itemslist->data;