From cf1f8ec8123361922a9cf3cf083de37097acf77f Mon Sep 17 00:00:00 2001 From: Samuel Tardieu Date: Mon, 9 Jun 2014 22:38:45 +0200 Subject: fix #3970: crash when trying to change GC-username --- main/src/cgeo/geocaching/MainActivity.java | 6 ++++++ main/src/cgeo/geocaching/settings/SettingsActivity.java | 4 ---- 2 files changed, 6 insertions(+), 4 deletions(-) (limited to 'main') diff --git a/main/src/cgeo/geocaching/MainActivity.java b/main/src/cgeo/geocaching/MainActivity.java index 5be3df7..d901e05 100644 --- a/main/src/cgeo/geocaching/MainActivity.java +++ b/main/src/cgeo/geocaching/MainActivity.java @@ -6,6 +6,8 @@ import butterknife.InjectView; import cgeo.geocaching.activity.AbstractActionBarActivity; import cgeo.geocaching.connector.ConnectorFactory; import cgeo.geocaching.connector.capability.ILogin; +import cgeo.geocaching.connector.gc.GCConnector; +import cgeo.geocaching.connector.gc.GCLogin; import cgeo.geocaching.enumerations.CacheType; import cgeo.geocaching.enumerations.StatusCode; import cgeo.geocaching.geopoint.Geopoint; @@ -242,6 +244,10 @@ public class MainActivity extends AbstractActionBarActivity { new Thread() { @Override public void run() { + if (mustLogin && conn == GCConnector.getInstance()) { + // Properly log out from geocaching.com + GCLogin.getInstance().logout(); + } conn.login(firstLoginHandler, MainActivity.this); updateUserInfoHandler.sendEmptyMessage(-1); } diff --git a/main/src/cgeo/geocaching/settings/SettingsActivity.java b/main/src/cgeo/geocaching/settings/SettingsActivity.java index 315c73a..b8c298b 100644 --- a/main/src/cgeo/geocaching/settings/SettingsActivity.java +++ b/main/src/cgeo/geocaching/settings/SettingsActivity.java @@ -9,7 +9,6 @@ import cgeo.geocaching.activity.ActivityMixin; import cgeo.geocaching.apps.cache.navi.NavigationAppFactory; import cgeo.geocaching.apps.cache.navi.NavigationAppFactory.NavigationAppsEnum; import cgeo.geocaching.connector.gc.GCConnector; -import cgeo.geocaching.connector.gc.GCLogin; import cgeo.geocaching.files.SimpleDirChooser; import cgeo.geocaching.maps.MapProviderFactory; import cgeo.geocaching.maps.interfaces.MapSource; @@ -646,9 +645,6 @@ public class SettingsActivity extends PreferenceActivity { // TODO: do not special case geocaching.com here if ((isPreference(preference, R.string.pref_username) && !stringValue.equals(Settings.getUsername())) || (isPreference(preference, R.string.pref_password) && !stringValue.equals(Settings.getGcCredentials().getRight()))) { // reset log-in if gc user or password is changed - if (GCLogin.getInstance().isActualLoginStatus()) { - GCLogin.getInstance().logout(); - } CgeoApplication.getInstance().forceRelog(); } return true; -- cgit v1.1