Fix #2377870 : NPE in Dock settings
If the Dock settings is launched after reboot but before it is docked, the settings screen crashes because the dock status is not available. This fixes the case where there was never a pending intent for dock status.
This commit is contained in:
@@ -72,6 +72,9 @@ public class DockSettings extends PreferenceActivity {
|
|||||||
|
|
||||||
private void initDockSettings() {
|
private void initDockSettings() {
|
||||||
mAudioSettings = findPreference(KEY_AUDIO_SETTINGS);
|
mAudioSettings = findPreference(KEY_AUDIO_SETTINGS);
|
||||||
|
if (mAudioSettings != null) {
|
||||||
|
mAudioSettings.setSummary(R.string.dock_audio_summary_none);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void handleDockChange(Intent intent) {
|
private void handleDockChange(Intent intent) {
|
||||||
@@ -104,7 +107,9 @@ public class DockSettings extends PreferenceActivity {
|
|||||||
@Override
|
@Override
|
||||||
public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) {
|
public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) {
|
||||||
if (preference == mAudioSettings) {
|
if (preference == mAudioSettings) {
|
||||||
int dockState = mDockIntent.getIntExtra(Intent.EXTRA_DOCK_STATE, 0);
|
int dockState = mDockIntent != null
|
||||||
|
? mDockIntent.getIntExtra(Intent.EXTRA_DOCK_STATE, 0)
|
||||||
|
: Intent.EXTRA_DOCK_STATE_UNDOCKED;
|
||||||
if (dockState == Intent.EXTRA_DOCK_STATE_UNDOCKED) {
|
if (dockState == Intent.EXTRA_DOCK_STATE_UNDOCKED) {
|
||||||
showDialog(DIALOG_NOT_DOCKED);
|
showDialog(DIALOG_NOT_DOCKED);
|
||||||
} else {
|
} else {
|
||||||
|
Reference in New Issue
Block a user