Changeset bdad407 for protocols/jabber


Ignore:
Timestamp:
2009-10-04T18:28:41Z (15 years ago)
Author:
Wilmer van der Gaast <wilmer@…>
Branches:
master
Children:
e59b4f6
Parents:
c3e349e
Message:

Fixing a crash bug that causes crashes only with buggy Jabber conference
servers, sending a "you left this chat" without first acknowledging you
entering it.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • protocols/jabber/conference.c

    rc3e349e rbdad407  
    285285        else if( type ) /* type can only be NULL or "unavailable" in this function */
    286286        {
    287                 s = strchr( bud->ext_jid, '/' );
    288                 if( s ) *s = 0;
    289                 imcb_chat_remove_buddy( chat, bud->ext_jid, NULL );
    290                 if( bud != jc->me && bud->flags & JBFLAG_IS_ANONYMOUS )
    291                         imcb_remove_buddy( ic, bud->ext_jid, NULL );
    292                 if( s ) *s = '/';
     287                if( ( bud->flags & JBFLAG_IS_CHATROOM ) && bud->ext_jid )
     288                {
     289                        s = strchr( bud->ext_jid, '/' );
     290                        if( s ) *s = 0;
     291                        imcb_chat_remove_buddy( chat, bud->ext_jid, NULL );
     292                        if( bud != jc->me && bud->flags & JBFLAG_IS_ANONYMOUS )
     293                                imcb_remove_buddy( ic, bud->ext_jid, NULL );
     294                        if( s ) *s = '/';
     295                }
    293296               
    294297                if( bud == jc->me )
Note: See TracChangeset for help on using the changeset viewer.