From 4492e5066e786acc9e9ba86079ccce352a27df81 Mon Sep 17 00:00:00 2001 From: "Zeeshan Ali (Khattak)" Date: Thu, 2 Apr 2015 18:40:29 +0100 Subject: [PATCH 6/7] modem-manager: Don't enable the modem Seems at least GNOME takes care of modem enabling for us and besides this shouldn't be done by geoclue anyway (see bug#85040). https://bugs.freedesktop.org/show_bug.cgi?id=85305 --- src/gclue-modem-manager.c | 45 +++++++++------------------------------------ 1 file changed, 9 insertions(+), 36 deletions(-) diff --git a/src/gclue-modem-manager.c b/src/gclue-modem-manager.c index cce3065..71ab96d 100644 --- a/src/gclue-modem-manager.c +++ b/src/gclue-modem-manager.c @@ -410,38 +410,6 @@ out: } static void -on_modem_enabled (GObject *modem_object, - GAsyncResult *res, - gpointer user_data) -{ - GTask *task = G_TASK (user_data); - GClueModemManagerPrivate *priv; - MMModemLocationSource caps; - GError *error = NULL; - - if (!mm_modem_enable_finish (MM_MODEM (modem_object), res, &error)) { - if (error->code == MM_CORE_ERROR_IN_PROGRESS) - /* Seems a previous async call hasn't returned yet. */ - g_task_return_boolean (task, TRUE); - else - g_task_return_error (task, error); - g_object_unref (task); - - return; - } - priv = GCLUE_MODEM_MANAGER (g_task_get_source_object (task))->priv; - g_debug ("manager '%s' enabled.", mm_object_get_path (priv->mm_object)); - - caps = mm_modem_location_get_enabled (priv->modem_location) | priv->caps; - mm_modem_location_setup (priv->modem_location, - caps, - TRUE, - g_task_get_cancellable (task), - on_modem_location_setup, - task); -} - -static void enable_caps (GClueModemManager *manager, MMModemLocationSource caps, GCancellable *cancellable, @@ -454,10 +422,15 @@ enable_caps (GClueModemManager *manager, priv->caps |= caps; task = g_task_new (manager, cancellable, callback, user_data); - mm_modem_enable (priv->modem, - cancellable, - on_modem_enabled, - task); + priv = GCLUE_MODEM_MANAGER (g_task_get_source_object (task))->priv; + + caps = mm_modem_location_get_enabled (priv->modem_location) | priv->caps; + mm_modem_location_setup (priv->modem_location, + caps, + TRUE, + g_task_get_cancellable (task), + on_modem_location_setup, + task); } static gboolean -- 2.1.0