diff options
author | 2013-06-07 11:25:27 +0900 | |
---|---|---|
committer | 2013-06-07 19:08:58 +0900 | |
commit | 6c8136d1574f7e72eae951ee80f885d008c8e4c4 (patch) | |
tree | e5f0c094e7b6e98dc4de71ec40db0635bc61b701 /java/src/com/android/inputmethod/latin/SettingsFragment.java | |
parent | 6f9c6f2c64e6983b85adfe97335b5feb99a9937f (diff) | |
download | latinime-6c8136d1574f7e72eae951ee80f885d008c8e4c4.tar.gz latinime-6c8136d1574f7e72eae951ee80f885d008c8e4c4.tar.xz latinime-6c8136d1574f7e72eae951ee80f885d008c8e4c4.zip |
Fix possible NPE
Bug: 9314901
Change-Id: Id80f59df38ae72766b097fd1c23326fedd302439
Diffstat (limited to 'java/src/com/android/inputmethod/latin/SettingsFragment.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/SettingsFragment.java | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/java/src/com/android/inputmethod/latin/SettingsFragment.java b/java/src/com/android/inputmethod/latin/SettingsFragment.java index 7225cd6bf..8365cce3a 100644 --- a/java/src/com/android/inputmethod/latin/SettingsFragment.java +++ b/java/src/com/android/inputmethod/latin/SettingsFragment.java @@ -32,6 +32,7 @@ import android.preference.Preference; import android.preference.Preference.OnPreferenceClickListener; import android.preference.PreferenceGroup; import android.preference.PreferenceScreen; +import android.util.Log; import android.view.inputmethod.InputMethodSubtype; import java.util.TreeSet; @@ -45,6 +46,7 @@ import com.android.inputmethodcommon.InputMethodSettingsFragment; public final class SettingsFragment extends InputMethodSettingsFragment implements SharedPreferences.OnSharedPreferenceChangeListener { + private static final String TAG = SettingsFragment.class.getSimpleName(); private static final boolean DBG_USE_INTERNAL_USER_DICTIONARY_SETTINGS = false; private ListPreference mVoicePreference; @@ -246,7 +248,14 @@ public final class SettingsFragment extends InputMethodSettingsFragment @Override public void onSharedPreferenceChanged(final SharedPreferences prefs, final String key) { - (new BackupManager(getActivity())).dataChanged(); + final Activity activity = getActivity(); + if (activity == null) { + // TODO: Introduce a static function to register this class and ensure that + // onCreate must be called before "onSharedPreferenceChanged" is called. + Log.w(TAG, "onSharedPreferenceChanged called before activity starts."); + return; + } + (new BackupManager(activity)).dataChanged(); final Resources res = getResources(); if (key.equals(Settings.PREF_POPUP_ON)) { setPreferenceEnabled(Settings.PREF_KEY_PREVIEW_POPUP_DISMISS_DELAY, |