summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2015-07-27 13:17:20 -0400
committerMatthias Clasen <mclasen@redhat.com>2015-07-27 13:17:20 -0400
commitd8aea3e83539bea2234ba20313173d6a99123998 (patch)
treee42f60153da7f6fe96c279bb20b97df57130a066
parent6970ef98b36bc4e4574e28c28c0061f0f38ca8b0 (diff)
downloadgnome-initial-setup-d8aea3e83539bea2234ba20313173d6a99123998.tar.gz
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.
-rw-r--r--gnome-initial-setup/pages/timezone/gis-timezone-page.c2
1 files changed, 2 insertions, 0 deletions
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);
}