static void ril_sms_remove(struct ofono_sms *sms) { int i; struct ril_sms *sd = ril_sms_get_data(sms); DBG(""); ofono_sms_set_data(sms, NULL); if (sd->sim_context) { ofono_sim_context_free(sd->sim_context); } for (i=0; i<G_N_ELEMENTS(sd->event_id); i++) { grilio_channel_remove_handler(sd->io, sd->event_id[i]); } if (sd->timer_id > 0) { g_source_remove(sd->timer_id); } grilio_channel_unref(sd->io); grilio_queue_cancel_all(sd->q, FALSE); grilio_queue_unref(sd->q); g_free(sd); }
static void ril_radio_settings_remove(struct ofono_radio_settings *rs) { struct ril_radio_settings *rd = ril_radio_settings_get_data(rs); DBG(""); ofono_radio_settings_set_data(rs, NULL); if (rd->timer_id > 0) { g_source_remove(rd->timer_id); } grilio_queue_cancel_all(rd->q, FALSE); grilio_queue_unref(rd->q); g_free(rd); }
static void ril_devinfo_remove(struct ofono_devinfo *info) { struct ril_devinfo *di = ril_devinfo_get_data(info); DBG(""); ofono_devinfo_set_data(info, NULL); if (di->timer_id > 0) { g_source_remove(di->timer_id); } grilio_queue_cancel_all(di->q, FALSE); grilio_queue_unref(di->q); g_free(di); }