Blob Blame History Raw
From d8aea3e83539bea2234ba20313173d6a99123998 Mon Sep 17 00:00:00 2001
From: Matthias Clasen <mclasen@redhat.com>
Date: Mon, 27 Jul 2015 13:17:20 -0400
Subject: [PATCH] timezone: Stop the geoclue client

geoclue does not deal well with starting clients multiple times
without a stop call in between. This was causing us to loose
geolocation (and incur critical warnings) after a language change
forces reconstruction of all pages.
---
 gnome-initial-setup/pages/timezone/gis-timezone-page.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gnome-initial-setup/pages/timezone/gis-timezone-page.c b/gnome-initial-setup/pages/timezone/gis-timezone-page.c
index d58d8fd..eeef5fc 100644
--- a/gnome-initial-setup/pages/timezone/gis-timezone-page.c
+++ b/gnome-initial-setup/pages/timezone/gis-timezone-page.c
@@ -417,6 +417,8 @@ stop_geolocation (GisTimezonePage *page)
       g_clear_object (&priv->geoclue_cancellable);
     }
 
+  if (priv->geoclue_client)
+    geoclue_client_call_stop (priv->geoclue_client, NULL, NULL, NULL);
   g_clear_object (&priv->geoclue_client);
   g_clear_object (&priv->geoclue_manager);
 }
-- 
2.4.6