Changeset fb62f81f for irc.c


Ignore:
Timestamp:
2006-06-03T19:51:16Z (13 years ago)
Author:
Wilmer van der Gaast <wilmer@…>
Branches:
master
Children:
5a5c926, 9779c18
Parents:
c38e965
Message:

Implemented netsplits for "account off".

File:
1 edited

Legend:

Unmodified
Added
Removed
  • irc.c

    rc38e965 rfb62f81f  
    899899void irc_kill( irc_t *irc, user_t *u )
    900900{
    901         char *nick;
    902        
    903         irc_write( irc, ":%s!%s@%s QUIT :%s", u->nick, u->user, u->host, "Leaving..." );
     901        char *nick, *s;
     902        char reason[64];
     903       
     904        if( u->gc && u->gc->flags & OPT_LOGGING_OUT )
     905        {
     906                if( u->gc->user->proto_opt[0][0] )
     907                        g_snprintf( reason, sizeof( reason ), "%s %s", irc->myhost,
     908                                    u->gc->user->proto_opt[0] );
     909                else if( ( s = strchr( u->gc->username, '@' ) ) )
     910                        g_snprintf( reason, sizeof( reason ), "%s %s", irc->myhost,
     911                                    s + 1 );
     912                else
     913                        g_snprintf( reason, sizeof( reason ), "%s %s.%s", irc->myhost,
     914                                    u->gc->prpl->name, irc->myhost );
     915               
     916                /* proto_opt might contain garbage after the : */
     917                if( ( s = strchr( reason, ':' ) ) )
     918                        *s = 0;
     919        }
     920        else
     921        {
     922                strcpy( reason, "Leaving..." );
     923        }
     924       
     925        irc_write( irc, ":%s!%s@%s QUIT :%s", u->nick, u->user, u->host, reason );
    904926       
    905927        nick = g_strdup( u->nick );
Note: See TracChangeset for help on using the changeset viewer.