diff options
author | Denis Kenzior <denkenz@gmail.com> | 2015-11-04 21:44:48 -0600 |
---|---|---|
committer | Denis Kenzior <denkenz@gmail.com> | 2015-11-04 21:44:48 -0600 |
commit | b279a0d10a73fe634f74a1c63636e842bcf0f271 (patch) | |
tree | b742f5cc06321412a0063305a22844377864a28a /drivers | |
parent | ee9d9207797a1aa70195756291ae6f0bad449485 (diff) | |
download | ofono-b279a0d10a73fe634f74a1c63636e842bcf0f271.tar.bz2 |
rilmodem: Implement ril_clir_query_cb inline
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/rilmodem/call-settings.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/drivers/rilmodem/call-settings.c b/drivers/rilmodem/call-settings.c index b61e5901..3bfe43c8 100644 --- a/drivers/rilmodem/call-settings.c +++ b/drivers/rilmodem/call-settings.c @@ -222,7 +222,9 @@ static void ril_clir_query_cb(struct ril_msg *message, gpointer user_data) struct ofono_call_settings *cs = cbd->user; struct settings_data *sd = ofono_call_settings_get_data(cs); ofono_call_settings_clir_cb_t cb = cbd->cb; - struct reply_clir *rclir; + struct parcel rilp; + int override; + int network; if (message->error != RIL_E_SUCCESS) { ofono_error("%s: Reply failure: %s", __func__, @@ -230,16 +232,18 @@ static void ril_clir_query_cb(struct ril_msg *message, gpointer user_data) goto error; } - rclir = g_ril_reply_parse_get_clir(sd->ril, message); - if (rclir == NULL) { - ofono_error("%s: parse error", __func__); + g_ril_init_parcel(message, &rilp); + + if (parcel_r_int32(&rilp) != 2) goto error; - } - CALLBACK_WITH_SUCCESS(cb, rclir->status, rclir->provisioned, cbd->data); + override = parcel_r_int32(&rilp); + network = parcel_r_int32(&rilp); - g_ril_reply_free_get_clir(rclir); + g_ril_append_print_buf(sd->ril, "{%d,%d}", override, network); + g_ril_print_response(sd->ril, message); + CALLBACK_WITH_SUCCESS(cb, override, network, cbd->data); return; error: |