Fix Car settings crash if no TTS engine is installed
Bug: b/199222181
Test: Presubmit
Change-Id: I9b46459938b7531822768995fc37ef3a49623751
(cherry picked from commit 7c51d612c4a8a397ca06c6411ac95e3f962b013a)
diff --git a/src/com/android/car/settings/tts/PreferredEngineEntryPreferenceController.java b/src/com/android/car/settings/tts/PreferredEngineEntryPreferenceController.java
index 87e1cb8..4d1f1ce 100644
--- a/src/com/android/car/settings/tts/PreferredEngineEntryPreferenceController.java
+++ b/src/com/android/car/settings/tts/PreferredEngineEntryPreferenceController.java
@@ -59,6 +59,10 @@
getPreference().setOnSecondaryActionClickListener(() -> {
TextToSpeech.EngineInfo info = mEnginesHelper.getEngineInfo(
mEnginesHelper.getDefaultEngine());
+ if (info == null) {
+ LOG.e("EngineInfo is null");
+ return;
+ }
Intent subSettingsIntent = mEnginesHelper.getSettingsIntent(info.name);
if (subSettingsIntent != null) {
getContext().startActivity(subSettingsIntent);
@@ -72,6 +76,10 @@
protected void updateState(CarUiTwoActionIconPreference preference) {
TextToSpeech.EngineInfo info = mEnginesHelper.getEngineInfo(
mEnginesHelper.getDefaultEngine());
+ if (info == null) {
+ LOG.e("EngineInfo is null");
+ return;
+ }
preference.setSummary(info.label);
}
}