Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • protocols/msn/gw.c

    r4e4616a r088b070  
    2222        gw->ssl = (GATEWAY_PORT == 443);
    2323        gw->poll_timeout = -1;
    24         gw->write_timeout = -1;
    2524        gw->ic = ic;
    2625        gw->md = ic->proto_data;
     
    3534                b_event_remove(gw->poll_timeout);
    3635        }
    37 
    38         if (gw->write_timeout != -1) {
    39                 b_event_remove(gw->write_timeout);
    40         }
    41 
    4236        g_byte_array_free(gw->in, TRUE);
    4337        g_byte_array_free(gw->out, TRUE);
     
    195189}
    196190
    197 static gboolean msn_gw_write_cb(gpointer data, gint source, b_input_condition cond)
     191void msn_gw_write(struct msn_gw *gw, char *buf, size_t len)
    198192{
    199         struct msn_gw *gw;
    200        
    201         if (!(gw = msn_gw_from_ic(data))) {
    202                 return FALSE;
    203         }
    204 
     193        g_byte_array_append(gw->out, (const guint8 *) buf, len);
    205194        if (!gw->open) {
    206195                msn_gw_open(gw);
     
    208197                msn_gw_dorequest(gw, NULL);
    209198        }
    210 
    211         gw->write_timeout = -1;
    212         return FALSE;
    213199}
    214 
    215 void msn_gw_write(struct msn_gw *gw, char *buf, size_t len)
    216 {
    217         g_byte_array_append(gw->out, (const guint8 *) buf, len);
    218 
    219         /* do a bit of buffering here to send several commands with a single request */
    220         if (gw->write_timeout == -1) {
    221                 gw->write_timeout = b_timeout_add(1, msn_gw_write_cb, gw->ic);
    222         }
    223 }
Note: See TracChangeset for help on using the changeset viewer.