From 24a997667abfa0f4f414c2206236be44a09094ef Mon Sep 17 00:00:00 2001 From: Ivan Alejandro Date: Wed, 3 Jul 2013 14:39:10 -0300 Subject: Bugfix: faulty multiple provider selection. Closes #3067. --- changes/bug-3067_faulty-multiple-provider-selection | 1 + src/leap/gui/mainwindow.py | 15 ++++++++++----- 2 files changed, 11 insertions(+), 5 deletions(-) create mode 100644 changes/bug-3067_faulty-multiple-provider-selection diff --git a/changes/bug-3067_faulty-multiple-provider-selection b/changes/bug-3067_faulty-multiple-provider-selection new file mode 100644 index 00000000..fef95a6e --- /dev/null +++ b/changes/bug-3067_faulty-multiple-provider-selection @@ -0,0 +1 @@ + o Bugfix: reload config if switching to a different provider. Closes #3067. diff --git a/src/leap/gui/mainwindow.py b/src/leap/gui/mainwindow.py index 5e7965dd..7180139a 100644 --- a/src/leap/gui/mainwindow.py +++ b/src/leap/gui/mainwindow.py @@ -698,11 +698,16 @@ class MainWindow(QtGui.QMainWindow): """ if data[self._provider_bootstrapper.PASSED_KEY]: provider = self._login_widget.get_selected_provider() - if self._provider_config.loaded() or \ - self._provider_config.load(os.path.join("leap", - "providers", - provider, - "provider.json")): + + # If there's no loaded provider or + # we want to connect to other provider... + if (not self._provider_config.loaded() or + self._provider_config.get_domain() != provider): + self._provider_config.load( + os.path.join("leap", "providers", + provider, "provider.json")) + + if self._provider_config.loaded(): self._provider_bootstrapper.run_provider_setup_checks( self._provider_config, download_if_needed=True) -- cgit v1.2.3