Fix possible NPE

Bug: 9314901
Change-Id: Id80f59df38ae72766b097fd1c23326fedd302439
main
Satoshi Kataoka 2013-06-07 11:25:27 +09:00
parent 6f9c6f2c64
commit 6c8136d157
1 changed files with 10 additions and 1 deletions

View File

@ -32,6 +32,7 @@ import android.preference.Preference;
import android.preference.Preference.OnPreferenceClickListener; import android.preference.Preference.OnPreferenceClickListener;
import android.preference.PreferenceGroup; import android.preference.PreferenceGroup;
import android.preference.PreferenceScreen; import android.preference.PreferenceScreen;
import android.util.Log;
import android.view.inputmethod.InputMethodSubtype; import android.view.inputmethod.InputMethodSubtype;
import java.util.TreeSet; import java.util.TreeSet;
@ -45,6 +46,7 @@ import com.android.inputmethodcommon.InputMethodSettingsFragment;
public final class SettingsFragment extends InputMethodSettingsFragment public final class SettingsFragment extends InputMethodSettingsFragment
implements SharedPreferences.OnSharedPreferenceChangeListener { implements SharedPreferences.OnSharedPreferenceChangeListener {
private static final String TAG = SettingsFragment.class.getSimpleName();
private static final boolean DBG_USE_INTERNAL_USER_DICTIONARY_SETTINGS = false; private static final boolean DBG_USE_INTERNAL_USER_DICTIONARY_SETTINGS = false;
private ListPreference mVoicePreference; private ListPreference mVoicePreference;
@ -246,7 +248,14 @@ public final class SettingsFragment extends InputMethodSettingsFragment
@Override @Override
public void onSharedPreferenceChanged(final SharedPreferences prefs, final String key) { 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(); final Resources res = getResources();
if (key.equals(Settings.PREF_POPUP_ON)) { if (key.equals(Settings.PREF_POPUP_ON)) {
setPreferenceEnabled(Settings.PREF_KEY_PREVIEW_POPUP_DISMISS_DELAY, setPreferenceEnabled(Settings.PREF_KEY_PREVIEW_POPUP_DISMISS_DELAY,