diff options
author | Aleksander Morgado <aleksander@aleksander.es> | 2017-09-07 19:25:17 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@aleksander.es> | 2017-09-07 19:28:23 +0200 |
commit | 833243570f75dcd6f9ae788575f7c361c8f604a5 (patch) | |
tree | 1d86720648666cdcee586b120bcffad097c4e1aa /plugins/wavecom | |
parent | 288ebab106555aa378aa62347c4c1aa039929a5e (diff) |
wavecom: port modem_after_sim_unlock to use GTask
Diffstat (limited to 'plugins/wavecom')
-rw-r--r-- | plugins/wavecom/mm-broadband-modem-wavecom.c | 30 |
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); } /*****************************************************************************/ |