diff options
| author | Wilmer van der Gaast <wilmer@gaast.net> | 2010-05-11 00:35:58 +0100 | 
|---|---|---|
| committer | Wilmer van der Gaast <wilmer@gaast.net> | 2010-05-11 00:35:58 +0100 | 
| commit | e73a501ce0cf49d8073d7d25656561400f2aca79 (patch) | |
| tree | 84efb87141c557f11355017a4c89e28b1ed0120b /protocols | |
| parent | 7ee07c3191d1eb21d1d8317f7bfc3d9d98359ab1 (diff) | |
Fixed a long-standing bug where non-anonymous Jabber chatrooms could cause
full JIDs to be added to the local contact list, but not removed when
leaving the room, eventually triggering errors like the one in #499. People
kept sending me these dumps and I finally took time to make what turned out
to be this one-line fix.
This error should never appear again unless people are doing really crazy
stuff.
Diffstat (limited to 'protocols')
| -rw-r--r-- | protocols/jabber/conference.c | 4 | 
1 files changed, 3 insertions, 1 deletions
| diff --git a/protocols/jabber/conference.c b/protocols/jabber/conference.c index f434c58a..affe8aef 100644 --- a/protocols/jabber/conference.c +++ b/protocols/jabber/conference.c @@ -271,8 +271,10 @@ void jabber_chat_pkt_presence( struct im_connection *ic, struct jabber_buddy *bu  			bud->flags |= JBFLAG_IS_ANONYMOUS;  		} -		if( bud != jc->me ) +		if( bud != jc->me && bud->flags & JBFLAG_IS_ANONYMOUS )  		{ +			/* If JIDs are anonymized, add them to the local +			   list for the duration of this chat. */  			imcb_add_buddy( ic, bud->ext_jid, NULL );  			imcb_buddy_nick_hint( ic, bud->ext_jid, bud->resource );  		} | 
