From fdcbbf5733d546507aca7ffe4af6a9383b054c8e Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Mon, 13 Jun 2016 10:40:27 +0200 Subject: [PATCH] Fix crash when deleting account + disabled delete button when there is no account to delete --- src/org/linphone/AccountPreferencesFragment.java | 2 +- src/org/linphone/LinphonePreferences.java | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/org/linphone/AccountPreferencesFragment.java b/src/org/linphone/AccountPreferencesFragment.java index 84c0ca59a..a1b217840 100644 --- a/src/org/linphone/AccountPreferencesFragment.java +++ b/src/org/linphone/AccountPreferencesFragment.java @@ -392,7 +392,7 @@ public class AccountPreferencesFragment extends PreferencesListFragment { } final Preference delete = manage.getPreference(2); - delete.setEnabled(true); + delete.setEnabled(!isNewAccount); delete.setOnPreferenceClickListener(new OnPreferenceClickListener() { public boolean onPreferenceClick(Preference preference) { mPrefs.deleteAccount(n); diff --git a/src/org/linphone/LinphonePreferences.java b/src/org/linphone/LinphonePreferences.java index 3897d3de2..9fe1c9f26 100644 --- a/src/org/linphone/LinphonePreferences.java +++ b/src/org/linphone/LinphonePreferences.java @@ -728,6 +728,11 @@ public class LinphonePreferences { } public void deleteAccount(int n) { + LinphoneAuthInfo authInfo = getAuthInfo(n); + if (authInfo != null) { + getLc().removeAuthInfo(authInfo); + } + LinphoneProxyConfig proxyCfg = getProxyConfig(n); if (proxyCfg != null) getLc().removeProxyConfig(proxyCfg); @@ -737,11 +742,6 @@ public class LinphonePreferences { getLc().setDefaultProxyConfig(null); } - LinphoneAuthInfo authInfo = getAuthInfo(n); - if (authInfo != null) { - getLc().removeAuthInfo(authInfo); - } - getLc().refreshRegisters(); } // End of accounts settings