diff options
author | Aleksander Morgado <aleksander@aleksander.es> | 2018-05-14 21:38:07 +0200 |
---|---|---|
committer | Dan Williams <dcbw@redhat.com> | 2018-07-10 19:43:44 +0000 |
commit | 3570604bc4005e36e506c896bdb8cfc6a026df96 (patch) | |
tree | 7f5409fb1889537301cc2c6e62d91582c14720d8 /src/mm-iface-modem-simple.c | |
parent | a77beaa271cad696f74579f4b409916606b16b6a (diff) |
iface-modem-simple: no need for an extra 'self' reference when using GTask
Diffstat (limited to 'src/mm-iface-modem-simple.c')
-rw-r--r-- | src/mm-iface-modem-simple.c | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/src/mm-iface-modem-simple.c b/src/mm-iface-modem-simple.c index a16adb19..9d8fc1a3 100644 --- a/src/mm-iface-modem-simple.c +++ b/src/mm-iface-modem-simple.c @@ -32,7 +32,6 @@ /* Register in either a CDMA or a 3GPP network (or both) */ typedef struct { - MMIfaceModemSimple *self; gchar *operator_id; guint remaining_tries_cdma; guint remaining_tries_3gpp; @@ -43,7 +42,6 @@ static void register_in_network_context_free (RegisterInNetworkContext *ctx) { g_free (ctx->operator_id); - g_object_unref (ctx->self); g_free (ctx); } @@ -67,8 +65,7 @@ register_in_cdma_network_ready (MMIfaceModemCdma *self, ctx = g_task_get_task_data (task); ctx->remaining_tries_cdma--; - if (!mm_iface_modem_cdma_register_in_network_finish ( - MM_IFACE_MODEM_CDMA (self), res, NULL)) { + if (!mm_iface_modem_cdma_register_in_network_finish (self, res, NULL)) { /* Retry check */ check_next_registration (task); return; @@ -89,8 +86,7 @@ register_in_3gpp_network_ready (MMIfaceModem3gpp *self, ctx = g_task_get_task_data (task); ctx->remaining_tries_3gpp--; - if (!mm_iface_modem_3gpp_register_in_network_finish ( - MM_IFACE_MODEM_3GPP (self), res, NULL)) { + if (!mm_iface_modem_3gpp_register_in_network_finish (self, res, NULL)) { /* Retry check */ check_next_registration (task); return; @@ -105,13 +101,15 @@ static void check_next_registration (GTask *task) { RegisterInNetworkContext *ctx; + MMIfaceModemSimple *self; + self = MM_IFACE_MODEM_SIMPLE (g_task_get_source_object (task)); ctx = g_task_get_task_data (task); if (ctx->remaining_tries_cdma > ctx->remaining_tries_3gpp && ctx->remaining_tries_cdma > 0) { mm_iface_modem_cdma_register_in_network ( - MM_IFACE_MODEM_CDMA (ctx->self), + MM_IFACE_MODEM_CDMA (self), ctx->max_try_time, (GAsyncReadyCallback)register_in_cdma_network_ready, task); @@ -120,7 +118,7 @@ check_next_registration (GTask *task) if (ctx->remaining_tries_3gpp > 0) { mm_iface_modem_3gpp_register_in_network ( - MM_IFACE_MODEM_3GPP (ctx->self), + MM_IFACE_MODEM_3GPP (self), ctx->operator_id, ctx->max_try_time, (GAsyncReadyCallback)register_in_3gpp_network_ready, @@ -145,17 +143,16 @@ register_in_3gpp_or_cdma_network (MMIfaceModemSimple *self, GTask *task; ctx = g_new0 (RegisterInNetworkContext, 1); - ctx->self = g_object_ref (self); ctx->operator_id = g_strdup (operator_id); /* 3GPP-only modems... */ - if (mm_iface_modem_is_3gpp_only (MM_IFACE_MODEM (ctx->self))) { + if (mm_iface_modem_is_3gpp_only (MM_IFACE_MODEM (self))) { ctx->max_try_time = 60; ctx->remaining_tries_cdma = 0; ctx->remaining_tries_3gpp = 1; } /* CDMA-only modems... */ - else if (mm_iface_modem_is_cdma_only (MM_IFACE_MODEM (ctx->self))) { + else if (mm_iface_modem_is_cdma_only (MM_IFACE_MODEM (self))) { ctx->max_try_time = 60; ctx->remaining_tries_cdma = 1; ctx->remaining_tries_3gpp = 0; |