summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Chan <benchan@chromium.org>2018-04-28 16:01:39 -0700
committerAleksander Morgado <aleksander@aleksander.es>2018-06-02 17:56:59 +0200
commit76bdaaba3e0d6e058d0d84b2c61e5581d3c143c1 (patch)
treefb71dda2a53c13ade308d7732cecef0f30c57e41
parentf330ffdaa993880260ed8c2d48eac5fee5dba11a (diff)
downloadModemManager-76bdaaba3e0d6e058d0d84b2c61e5581d3c143c1.tar.gz
broadband-modem-qmi: port oma_load_features to use GTask
-rw-r--r--src/mm-broadband-modem-qmi.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/mm-broadband-modem-qmi.c b/src/mm-broadband-modem-qmi.c
index 4a8a45af3..0b5b6606f 100644
--- a/src/mm-broadband-modem-qmi.c
+++ b/src/mm-broadband-modem-qmi.c
@@ -9146,10 +9146,15 @@ oma_load_features_finish (MMIfaceModemOma *self,
GAsyncResult *res,
GError **error)
{
- if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (res), error))
- return MM_OMA_FEATURE_NONE;
+ GError *inner_error = NULL;
+ gssize value;
- return (MMOmaFeature) GPOINTER_TO_UINT (g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (res)));
+ value = g_task_propagate_int (G_TASK (res), &inner_error);
+ if (inner_error) {
+ g_propagate_error (error, inner_error);
+ return MM_OMA_FEATURE_NONE;
+ }
+ return (MMOmaFeature)value;
}
static void
@@ -9205,7 +9210,7 @@ oma_load_features (MMIfaceModemOma *self,
{
QmiClient *client = NULL;
- if (!ensure_qmi_client (MM_BROADBAND_MODEM_QMI (self),
+ if (!assure_qmi_client (MM_BROADBAND_MODEM_QMI (self),
QMI_SERVICE_OMA, &client,
callback, user_data))
return;
@@ -9216,10 +9221,7 @@ oma_load_features (MMIfaceModemOma *self,
5,
NULL,
(GAsyncReadyCallback)oma_get_feature_setting_ready,
- g_simple_async_result_new (G_OBJECT (self),
- callback,
- user_data,
- oma_load_features));
+ g_task_new (self, NULL, callback, user_data));
}
/*****************************************************************************/