comparison libpurple/protocols/jabber/roster.c @ 28326:5c61429ea529

jabber: Fix removing a buddy with a pending subscription. deryni noticed that an attempt to remove the buddy would put them in the Buddies group (a second removal succeeded). ejabberd responds to the initial removal with a roster push that looks like: <item ask='subscribe' subscription='remove' jid='user@example.com'/> The subscribe was munging up this check. The user is no longer listed in the roster, though.
author Paul Aurich <paul@darkrain42.org>
date Mon, 05 Oct 2009 18:10:08 +0000
parents c42d5c23a9e8
children 05867b153f03
comparison
equal deleted inserted replaced
28325:f7d7cf32a715 28326:5c61429ea529
227 if(purple_strequal(ask, "subscribe")) 227 if(purple_strequal(ask, "subscribe"))
228 jb->subscription |= JABBER_SUB_PENDING; 228 jb->subscription |= JABBER_SUB_PENDING;
229 else 229 else
230 jb->subscription &= ~JABBER_SUB_PENDING; 230 jb->subscription &= ~JABBER_SUB_PENDING;
231 231
232 if(jb->subscription == JABBER_SUB_REMOVE) { 232 if(jb->subscription & JABBER_SUB_REMOVE) {
233 remove_purple_buddies(js, jid); 233 remove_purple_buddies(js, jid);
234 } else { 234 } else {
235 GSList *groups = NULL; 235 GSList *groups = NULL;
236 gboolean seen_empty = FALSE; 236 gboolean seen_empty = FALSE;
237 237