aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--plugins/iridium/mm-bearer-iridium.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/plugins/iridium/mm-bearer-iridium.c b/plugins/iridium/mm-bearer-iridium.c
index f266f12d..d0adeb0c 100644
--- a/plugins/iridium/mm-bearer-iridium.c
+++ b/plugins/iridium/mm-bearer-iridium.c
@@ -66,7 +66,6 @@ connect_report_ready (MMBaseModem *modem,
{
ConnectContext *ctx;
const gchar *result;
- GError *error = NULL;
/* If cancelled, complete */
if (g_task_return_error_if_cancelled (task)) {
@@ -79,16 +78,15 @@ connect_report_ready (MMBaseModem *modem,
/* If we got a proper extended reply, build the new error to be set */
result = mm_base_modem_at_command_full_finish (modem, res, NULL);
if (result && g_str_has_prefix (result, "+CEER: ") && strlen (result) > 7) {
- error = g_error_new (ctx->saved_error->domain,
- ctx->saved_error->code,
- "%s", &result[7]);
- g_error_free (ctx->saved_error);
- } else
+ g_task_return_new_error (task,
+ ctx->saved_error->domain,
+ ctx->saved_error->code,
+ "%s", &result[7]);
+ } else {
/* Otherwise, take the original error as it was */
- g_propagate_error (&error, ctx->saved_error);
-
- ctx->saved_error = NULL;
- g_task_return_error (task, error);
+ g_task_return_error (task, ctx->saved_error);
+ ctx->saved_error = NULL;
+ }
g_object_unref (task);
}