Changeset e135cd09


Ignore:
Timestamp:
2010-07-24T15:58:27Z (14 years ago)
Author:
Wilmer van der Gaast <wilmer@…>
Branches:
master
Children:
0f28785
Parents:
40e6dac
Message:

Use the account tag in a few places and store it in the XML file as an
attribute, not as a setting (since all accounts have it anyway).

Files:
4 edited

Legend:

Unmodified
Added
Removed
  • irc_channel.c

    r40e6dac re135cd09  
    579579                bee_irc_channel_update( ic->irc, ic, NULL );
    580580       
    581         return g_strdup_printf( "%s(%s)", acc->prpl->name, acc->user );
     581        return g_strdup( acc->tag );
    582582}
    583583
  • irc_im.c

    r40e6dac re135cd09  
    805805                acc->prpl->chat_add_settings( acc, &ic->set );
    806806       
    807         return g_strdup_printf( "%s(%s)", acc->prpl->name, acc->user );
     807        return g_strdup( acc->tag );
    808808}
    809809
  • protocols/account.c

    r40e6dac re135cd09  
    6767       
    6868        s = set_add( &a->set, "tag", NULL, set_eval_account, a );
     69        s->flags |= ACC_SET_NOSAVE;
    6970       
    7071        s = set_add( &a->set, "username", NULL, set_eval_account, a );
  • storage_xml.c

    r40e6dac re135cd09  
    127127        else if( g_strcasecmp( element_name, "account" ) == 0 )
    128128        {
    129                 char *protocol, *handle, *server, *password = NULL, *autoconnect;
     129                char *protocol, *handle, *server, *password = NULL, *autoconnect, *tag;
    130130                char *pass_b64 = NULL;
    131131                unsigned char *pass_cr = NULL;
     
    137137                server = xml_attr( attr_names, attr_values, "server" );
    138138                autoconnect = xml_attr( attr_names, attr_values, "autoconnect" );
     139                tag = xml_attr( attr_names, attr_values, "tag" );
    139140               
    140141                protocol = xml_attr( attr_names, attr_values, "protocol" );
     
    156157                        if( autoconnect )
    157158                                set_setstr( &xd->current_account->set, "auto_connect", autoconnect );
     159                        if( tag )
     160                                set_setstr( &xd->current_account->set, "tag", tag );
    158161                }
    159162                else
     
    244247                {
    245248                        irc_channel_t *ic;
    246                         char *acc;
    247                        
    248                         acc = g_strdup_printf( "%s(%s)",
    249                                                xd->current_account->prpl->name,
    250                                                xd->current_account->user );
    251249                       
    252250                        if( ( ic = irc_channel_new( irc, channel ) ) &&
    253251                            set_setstr( &ic->set, "type", "chat" ) &&
    254252                            set_setstr( &ic->set, "chat_type", "room" ) &&
    255                             set_setstr( &ic->set, "account", acc ) &&
     253                            set_setstr( &ic->set, "account", xd->current_account->tag ) &&
    256254                            set_setstr( &ic->set, "room", handle ) )
    257255                        {
     
    261259                        else if( ic )
    262260                                irc_channel_free( ic );
    263                        
    264                         g_free( acc );
    265261                }
    266262                else
     
    502498                g_free( pass_cr );
    503499               
    504                 if( !xml_printf( fd, 1, "<account protocol=\"%s\" handle=\"%s\" password=\"%s\" autoconnect=\"%d\"", acc->prpl->name, acc->user, pass_b64, acc->auto_connect ) )
     500                if( !xml_printf( fd, 1, "<account protocol=\"%s\" handle=\"%s\" password=\"%s\" "
     501                                        "autoconnect=\"%d\" tag=\"%s\"", acc->prpl->name, acc->user,
     502                                        pass_b64, acc->auto_connect, acc->tag ) )
    505503                {
    506504                        g_free( pass_b64 );
Note: See TracChangeset for help on using the changeset viewer.