Changeset e35d1a1 for protocols/nogaim.c


Ignore:
Timestamp:
2007-04-22T20:44:27Z (14 years ago)
Author:
Wilmer van der Gaast <wilmer@…>
Branches:
master
Children:
43671b9
Parents:
c737ba7
Message:

Read-only support for Jabber conferences (non-anonymous rooms only).
Just don't use this, you're really not going to like it. :-)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • protocols/nogaim.c

    rc737ba7 re35d1a1  
    554554                u->online = 0;
    555555               
    556                 /* Remove him/her from the conversations to prevent PART messages after he/she QUIT already */
    557                 for( c = ic->conversations; c; c = c->next )
     556                /* Remove him/her from the groupchats to prevent PART messages after he/she QUIT already */
     557                for( c = ic->groupchats; c; c = c->next )
    558558                        remove_chat_buddy_silent( c, (char*) handle );
    559559        }
     
    685685}
    686686
    687 void imcb_chat_removed( struct groupchat *c )
     687void imcb_chat_free( struct groupchat *c )
    688688{
    689689        struct im_connection *ic = c->ic;
    690         struct groupchat *l = NULL;
     690        struct groupchat *l;
    691691        GList *ir;
    692692       
     
    708708                }
    709709               
     710                /* Find the previous chat in the linked list. */
     711                for( l = ic->groupchats; l && l->next != c; l = l->next );
     712               
    710713                if( l )
    711714                        l->next = c->next;
    712715                else
    713                         ic->conversations = c->next;
     716                        ic->groupchats = c->next;
    714717               
    715718                for( ir = c->in_room; ir; ir = ir->next )
     
    749752        /* This one just creates the conversation structure, user won't see anything yet */
    750753       
    751         if( ic->conversations )
    752         {
    753                 for( c = ic->conversations; c->next; c = c->next );
     754        if( ic->groupchats )
     755        {
     756                for( c = ic->groupchats; c->next; c = c->next );
    754757                c = c->next = g_new0( struct groupchat, 1 );
    755758        }
    756759        else
    757                 ic->conversations = c = g_new0( struct groupchat, 1 );
     760                ic->groupchats = c = g_new0( struct groupchat, 1 );
    758761       
    759762        c->ic = ic;
     
    863866        {
    864867                ic = l->data;
    865                 for( c = ic->conversations; c && g_strcasecmp( c->channel, channel ) != 0; c = c->next );
     868                for( c = ic->groupchats; c && g_strcasecmp( c->channel, channel ) != 0; c = c->next );
    866869                if( c )
    867870                        return c;
Note: See TracChangeset for help on using the changeset viewer.