aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2017-09-07 19:25:17 +0200
committerAleksander Morgado <aleksander@aleksander.es>2017-09-07 19:28:23 +0200
commit833243570f75dcd6f9ae788575f7c361c8f604a5 (patch)
tree1d86720648666cdcee586b120bcffad097c4e1aa
parent288ebab106555aa378aa62347c4c1aa039929a5e (diff)
wavecom: port modem_after_sim_unlock to use GTask
-rw-r--r--plugins/wavecom/mm-broadband-modem-wavecom.c30
1 files changed, 13 insertions, 17 deletions
diff --git a/plugins/wavecom/mm-broadband-modem-wavecom.c b/plugins/wavecom/mm-broadband-modem-wavecom.c
index fda4a974..94115408 100644
--- a/plugins/wavecom/mm-broadband-modem-wavecom.c
+++ b/plugins/wavecom/mm-broadband-modem-wavecom.c
@@ -1136,37 +1136,33 @@ register_in_network (MMIfaceModem3gpp *self,
/* After SIM unlock (Modem interface) */
static gboolean
-modem_after_sim_unlock_finish (MMIfaceModem *self,
- GAsyncResult *res,
- GError **error)
+modem_after_sim_unlock_finish (MMIfaceModem *self,
+ GAsyncResult *res,
+ GError **error)
{
- return TRUE;
+ return g_task_propagate_boolean (G_TASK (res), error);
}
static gboolean
-after_sim_unlock_wait_cb (GSimpleAsyncResult *result)
+after_sim_unlock_wait_cb (GTask *task)
{
- g_simple_async_result_complete (result);
- g_object_unref (result);
+ g_task_return_boolean (task, TRUE);
+ g_object_unref (task);
return G_SOURCE_REMOVE;
}
static void
-modem_after_sim_unlock (MMIfaceModem *self,
- GAsyncReadyCallback callback,
- gpointer user_data)
+modem_after_sim_unlock (MMIfaceModem *self,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
{
- GSimpleAsyncResult *result;
+ GTask *task;
/* A short wait is necessary for SIM to become ready, otherwise reloading
* facility lock states may fail with a +CME ERROR: 515 error.
*/
- result = g_simple_async_result_new (G_OBJECT (self),
- callback,
- user_data,
- modem_after_sim_unlock);
-
- g_timeout_add_seconds (5, (GSourceFunc)after_sim_unlock_wait_cb, result);
+ task = g_task_new (self, NULL, callback, user_data);
+ g_timeout_add_seconds (5, (GSourceFunc)after_sim_unlock_wait_cb, task);
}
/*****************************************************************************/