broadband-modem: port modem_messaging_set_default_storage to use GTask

This commit is contained in:
Ben Chan
2017-07-12 13:40:52 -07:00
committed by Aleksander Morgado
parent 101c646cf9
commit de6ba7a7aa

View File

@@ -5678,23 +5678,22 @@ modem_messaging_set_default_storage_finish (MMIfaceModemMessaging *self,
GAsyncResult *res, GAsyncResult *res,
GError **error) 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 static void
cpms_set_ready (MMBroadbandModem *self, cpms_set_ready (MMBroadbandModem *self,
GAsyncResult *res, GAsyncResult *res,
GSimpleAsyncResult *simple) GTask *task)
{ {
GError *error = NULL; GError *error = NULL;
mm_base_modem_at_command_finish (MM_BASE_MODEM (self), res, &error); mm_base_modem_at_command_finish (MM_BASE_MODEM (self), res, &error);
if (error) if (error)
g_simple_async_result_take_error (simple, error); g_task_return_error (task, error);
else else
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 (task);
g_object_unref (simple);
} }
static void static void
@@ -5705,18 +5704,19 @@ modem_messaging_set_default_storage (MMIfaceModemMessaging *_self,
{ {
MMBroadbandModem *self = MM_BROADBAND_MODEM (_self); MMBroadbandModem *self = MM_BROADBAND_MODEM (_self);
gchar *cmd; gchar *cmd;
GSimpleAsyncResult *result;
gchar *mem1_str; gchar *mem1_str;
gchar *mem_str; gchar *mem_str;
GTask *task;
/* We provide the current sms storage for mem1 if not UNKNOWN */ /* We provide the current sms storage for mem1 if not UNKNOWN */
if (self->priv->current_sms_mem1_storage == MM_SMS_STORAGE_UNKNOWN) { if (self->priv->current_sms_mem1_storage == MM_SMS_STORAGE_UNKNOWN) {
g_simple_async_report_error_in_idle (G_OBJECT (self), g_task_report_new_error (self,
callback, callback,
user_data, user_data,
MM_CORE_ERROR, modem_messaging_set_default_storage,
MM_CORE_ERROR_INVALID_ARGS, MM_CORE_ERROR,
"Cannot set default storage when current mem1 storage is unknown"); MM_CORE_ERROR_INVALID_ARGS,
"Cannot set default storage when current mem1 storage is unknown");
return; return;
} }
@@ -5728,17 +5728,14 @@ modem_messaging_set_default_storage (MMIfaceModemMessaging *_self,
cmd = g_strdup_printf ("+CPMS=\"%s\",\"%s\",\"%s\"", mem1_str, mem_str, mem_str); cmd = g_strdup_printf ("+CPMS=\"%s\",\"%s\",\"%s\"", mem1_str, mem_str, mem_str);
result = g_simple_async_result_new (G_OBJECT (self), task = g_task_new (self, NULL, callback, user_data);
callback,
user_data,
modem_messaging_set_default_storage);
mm_base_modem_at_command (MM_BASE_MODEM (self), mm_base_modem_at_command (MM_BASE_MODEM (self),
cmd, cmd,
3, 3,
FALSE, FALSE,
(GAsyncReadyCallback)cpms_set_ready, (GAsyncReadyCallback)cpms_set_ready,
result); task);
g_free (mem1_str); g_free (mem1_str);
g_free (mem_str); g_free (mem_str);
g_free (cmd); g_free (cmd);