Changeset 8e419cb for protocols/msn/sb.c


Ignore:
Timestamp:
2006-01-10T21:35:08Z (18 years ago)
Author:
Jelmer Vernooij <jelmer@…>
Branches:
master
Children:
a4dc9f7
Parents:
3e91c3e (diff), dd8d4c5 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge Wilmer

File:
1 edited

Legend:

Unmodified
Added
Removed
  • protocols/msn/sb.c

    r3e91c3e r8e419cb  
    512512        {
    513513                int num = atoi( cmd[0] );
    514                 struct msn_status_code *err = msn_status_by_number( num );
     514                const struct msn_status_code *err = msn_status_by_number( num );
    515515               
    516516                g_snprintf( buf, sizeof( buf ), "Error reported by switchboard server: %s", err->text );
     
    522522                        return( 0 );
    523523                }
    524                 else if( err->flags & STATUS_FATAL )
     524                if( err->flags & STATUS_FATAL )
    525525                {
    526526                        signoff( gc );
    527527                        return( 0 );
     528                }
     529                if( err->flags & STATUS_SB_IM_SPARE )
     530                {
     531                        if( sb->who )
     532                        {
     533                                struct msn_message *m;
     534                                GSList *l;
     535                               
     536                                /* Apparently some invitation failed. We might want to use this
     537                                   board later, so keep it as a spare. */
     538                                g_free( sb->who );
     539                                sb->who = NULL;
     540                               
     541                                /* Also clear the msgq, otherwise someone else might get them. */
     542                                for( l = sb->msgq; l; l = l->next )
     543                                {
     544                                        m = l->data;
     545                                        g_free( m->who );
     546                                        g_free( m->text );
     547                                        g_free( m );
     548                                }
     549                                g_slist_free( sb->msgq );
     550                                sb->msgq = NULL;
     551                        }
    528552                }
    529553        }
Note: See TracChangeset for help on using the changeset viewer.