diff options
author | Ben Chan <benchan@chromium.org> | 2017-08-01 12:32:30 -0700 |
---|---|---|
committer | Aleksander Morgado <aleksander@aleksander.es> | 2017-09-08 17:45:29 +0200 |
commit | 46866b08bea4cbd8df6549fda57359613a1a71b1 (patch) | |
tree | 0eb0e588a30970f7bb79cf8ec3329843e71eaa0b | |
parent | 5f641afe07dc878129b17b0ff0e6227d22c00b1c (diff) |
huawei: port modem_cdma_{setup,cleanup}_unsolicited_events to use GTask
-rw-r--r-- | plugins/huawei/mm-broadband-modem-huawei.c | 49 |
1 files changed, 19 insertions, 30 deletions
diff --git a/plugins/huawei/mm-broadband-modem-huawei.c b/plugins/huawei/mm-broadband-modem-huawei.c index bcf2a32f..d2b1d75e 100644 --- a/plugins/huawei/mm-broadband-modem-huawei.c +++ b/plugins/huawei/mm-broadband-modem-huawei.c @@ -2568,26 +2568,24 @@ modem_cdma_setup_cleanup_unsolicited_events_finish (MMIfaceModemCdma *self, GAsyncResult *res, GError **error) { - return !g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (res), error); + return g_task_propagate_boolean (G_TASK (res), error); } static void parent_cdma_setup_unsolicited_events_ready (MMIfaceModemCdma *self, GAsyncResult *res, - GSimpleAsyncResult *simple) + GTask *task) { GError *error = NULL; if (!iface_modem_cdma_parent->setup_unsolicited_events_finish (self, res, &error)) - g_simple_async_result_take_error (simple, error); + g_task_return_error (task, error); else { /* Our own setup now */ set_cdma_unsolicited_events_handlers (MM_BROADBAND_MODEM_HUAWEI (self), TRUE); - g_simple_async_result_set_op_res_gboolean (simple, TRUE); + g_task_return_boolean (task, TRUE); } - - g_simple_async_result_complete (simple); - g_object_unref (simple); + g_object_unref (task); } static void @@ -2595,12 +2593,9 @@ modem_cdma_setup_unsolicited_events (MMIfaceModemCdma *self, GAsyncReadyCallback callback, gpointer user_data) { - GSimpleAsyncResult *result; + GTask *task; - result = g_simple_async_result_new (G_OBJECT (self), - callback, - user_data, - modem_cdma_setup_unsolicited_events); + task = g_task_new (self, NULL, callback, user_data); /* Chain up parent's setup if needed */ if (iface_modem_cdma_parent->setup_unsolicited_events && @@ -2608,30 +2603,28 @@ modem_cdma_setup_unsolicited_events (MMIfaceModemCdma *self, iface_modem_cdma_parent->setup_unsolicited_events ( self, (GAsyncReadyCallback)parent_cdma_setup_unsolicited_events_ready, - result); + task); return; } /* Otherwise just run our setup and complete */ set_cdma_unsolicited_events_handlers (MM_BROADBAND_MODEM_HUAWEI (self), TRUE); - g_simple_async_result_set_op_res_gboolean (result, TRUE); - g_simple_async_result_complete_in_idle (result); - g_object_unref (result); + g_task_return_boolean (task, TRUE); + g_object_unref (task); } static void parent_cdma_cleanup_unsolicited_events_ready (MMIfaceModemCdma *self, GAsyncResult *res, - GSimpleAsyncResult *simple) + GTask *task) { GError *error = NULL; if (!iface_modem_cdma_parent->cleanup_unsolicited_events_finish (self, res, &error)) - g_simple_async_result_take_error (simple, error); + g_task_return_error (task, error); else - g_simple_async_result_set_op_res_gboolean (simple, TRUE); - g_simple_async_result_complete (simple); - g_object_unref (simple); + g_task_return_boolean (task, TRUE); + g_object_unref (task); } static void @@ -2639,12 +2632,9 @@ modem_cdma_cleanup_unsolicited_events (MMIfaceModemCdma *self, GAsyncReadyCallback callback, gpointer user_data) { - GSimpleAsyncResult *result; + GTask *task; - result = g_simple_async_result_new (G_OBJECT (self), - callback, - user_data, - modem_cdma_cleanup_unsolicited_events); + task = g_task_new (self, NULL, callback, user_data); /* Our own cleanup first */ set_cdma_unsolicited_events_handlers (MM_BROADBAND_MODEM_HUAWEI (self), FALSE); @@ -2655,14 +2645,13 @@ modem_cdma_cleanup_unsolicited_events (MMIfaceModemCdma *self, iface_modem_cdma_parent->cleanup_unsolicited_events ( self, (GAsyncReadyCallback)parent_cdma_cleanup_unsolicited_events_ready, - result); + task); return; } /* Otherwise we're done */ - g_simple_async_result_set_op_res_gboolean (result, TRUE); - g_simple_async_result_complete_in_idle (result); - g_object_unref (result); + g_task_return_boolean (task, TRUE); + g_object_unref (task); } /*****************************************************************************/ |