static void enable_ready (MMModem *modem, GAsyncResult *result, gpointer nothing) { gboolean operation_result; GError *error = NULL; operation_result = mm_modem_enable_finish (modem, result, &error); enable_process_reply (operation_result, error); mmcli_async_operation_done (); }
static void on_modem_enabled (GObject *source_object, GAsyncResult *res, gpointer user_data) { GClueModemSource *source= GCLUE_MODEM_SOURCE (user_data); GClueModemSourcePrivate *priv = source->priv; MMModemLocationSource caps; GError *error = NULL; if (!mm_modem_enable_finish (priv->modem, res, &error)) { if (error->code == MM_CORE_ERROR_IN_PROGRESS) /* Seems another source instance is already on it */ g_signal_connect (G_OBJECT (priv->modem_location), "notify::location", G_CALLBACK (on_location_changed), user_data); else g_warning ("Failed to enable modem: %s", error->message); g_error_free (error); return; } g_signal_connect (G_OBJECT (priv->modem_location), "notify::location", G_CALLBACK (on_location_changed), user_data); caps = mm_modem_location_get_capabilities (priv->modem_location); mm_modem_location_setup (priv->modem_location, caps, TRUE, priv->cancellable, on_modem_location_setup, user_data); }