broadband-modem-qmi: port common_setup_cleanup_messaging_unsolicited_events to use GTask

This commit is contained in:
Ben Chan
2018-05-01 17:35:13 -07:00
committed by Aleksander Morgado
parent 85eb5bdcbd
commit df0d2f9552

View File

@@ -7863,7 +7863,7 @@ messaging_cleanup_unsolicited_events_finish (MMIfaceModemMessaging *_self,
return iface_modem_messaging_parent->cleanup_unsolicited_events_finish (_self, res, error);
}
return !g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (res), error);
return g_task_propagate_boolean (G_TASK (res), error);
}
static gboolean
@@ -7878,7 +7878,7 @@ messaging_setup_unsolicited_events_finish (MMIfaceModemMessaging *_self,
return iface_modem_messaging_parent->setup_unsolicited_events_finish (_self, res, 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
@@ -7887,25 +7887,21 @@ common_setup_cleanup_messaging_unsolicited_events (MMBroadbandModemQmi *self,
GAsyncReadyCallback callback,
gpointer user_data)
{
GSimpleAsyncResult *result;
GTask *task;
QmiClient *client = NULL;
if (!ensure_qmi_client (MM_BROADBAND_MODEM_QMI (self),
if (!assure_qmi_client (MM_BROADBAND_MODEM_QMI (self),
QMI_SERVICE_WMS, &client,
callback, user_data))
return;
result = g_simple_async_result_new (G_OBJECT (self),
callback,
user_data,
common_setup_cleanup_messaging_unsolicited_events);
task = g_task_new (self, NULL, callback, user_data);
if (enable == self->priv->messaging_unsolicited_events_setup) {
mm_dbg ("Messaging unsolicited events already %s; skipping",
enable ? "setup" : "cleanup");
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);
return;
}
@@ -7926,9 +7922,8 @@ common_setup_cleanup_messaging_unsolicited_events (MMBroadbandModemQmi *self,
self->priv->messaging_event_report_indication_id = 0;
}
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