Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • protocols/nogaim.c

    r098a75b r66aefeb  
    132132        extern void twitter_initmodule();
    133133        extern void purple_initmodule();
     134        extern void rpc_initmodule();
    134135
    135136#ifdef WITH_MSN
     
    155156#ifdef WITH_PURPLE
    156157        purple_initmodule();
     158#endif
     159
     160#ifdef WITH_RPC
     161        rpc_initmodule();
    157162#endif
    158163
     
    498503};
    499504
    500 static void imcb_ask_cb_free(void *data)
     505static void imcb_ask_auth_cb_no(void *data)
    501506{
    502507        struct imcb_ask_cb_data *cbd = data;
     508
     509        cbd->ic->acc->prpl->auth_deny(cbd->ic, cbd->handle);
    503510
    504511        g_free(cbd->handle);
     
    506513}
    507514
    508 static void imcb_ask_auth_cb_no(void *data)
     515static void imcb_ask_auth_cb_yes(void *data)
    509516{
    510517        struct imcb_ask_cb_data *cbd = data;
    511518
    512         cbd->ic->acc->prpl->auth_deny(cbd->ic, cbd->handle);
    513 
    514         imcb_ask_cb_free(cbd);
    515 }
    516 
    517 static void imcb_ask_auth_cb_yes(void *data)
    518 {
    519         struct imcb_ask_cb_data *cbd = data;
    520 
    521519        cbd->ic->acc->prpl->auth_allow(cbd->ic, cbd->handle);
    522520
    523         imcb_ask_cb_free(cbd);
     521        g_free(cbd->handle);
     522        g_free(cbd);
    524523}
    525524
     
    541540        data->handle = g_strdup(handle);
    542541        query_add((irc_t *) ic->bee->ui_data, ic, s,
    543                   imcb_ask_auth_cb_yes, imcb_ask_auth_cb_no, imcb_ask_cb_free, data);
    544 
    545         g_free(s);
     542                  imcb_ask_auth_cb_yes, imcb_ask_auth_cb_no, g_free, data);
     543}
     544
     545
     546static void imcb_ask_add_cb_no(void *data)
     547{
     548        g_free(((struct imcb_ask_cb_data*) data)->handle);
     549        g_free(data);
    546550}
    547551
     
    552556        cbd->ic->acc->prpl->add_buddy(cbd->ic, cbd->handle, NULL);
    553557
    554         imcb_ask_cb_free(data);
     558        imcb_ask_add_cb_no(data);
    555559}
    556560
    557561void imcb_ask_add(struct im_connection *ic, const char *handle, const char *realname)
    558562{
    559         struct imcb_ask_cb_data *data;
     563        struct imcb_ask_cb_data *data = g_new0(struct imcb_ask_cb_data, 1);
    560564        char *s;
    561565
     
    565569        }
    566570
    567         data = g_new0(struct imcb_ask_cb_data, 1);
    568 
    569571        s = g_strdup_printf("The user %s is not in your buddy list yet. Do you want to add him/her now?", handle);
    570572
     
    572574        data->handle = g_strdup(handle);
    573575        query_add((irc_t *) ic->bee->ui_data, ic, s,
    574                   imcb_ask_add_cb_yes, imcb_ask_cb_free, imcb_ask_cb_free, data);
    575 
    576         g_free(s);
     576                  imcb_ask_add_cb_yes, imcb_ask_add_cb_no, g_free, data);
    577577}
    578578
Note: See TracChangeset for help on using the changeset viewer.