diff options
| -rw-r--r-- | services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java index 31fad5c8114f..9599ef59d615 100644 --- a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java +++ b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java @@ -1018,6 +1018,10 @@ final class HdmiCecLocalDeviceTv extends HdmiCecLocalDevice { @ServiceThreadOnly void changeVolume(int curVolume, int delta, int maxVolume) { assertRunOnServiceThread(); + if (getAvrDeviceInfo() == null) { + // On initialization process, getAvrDeviceInfo() may return null and cause exception + return; + } if (delta == 0 || !isSystemAudioActivated()) { return; } @@ -1047,6 +1051,10 @@ final class HdmiCecLocalDeviceTv extends HdmiCecLocalDevice { @ServiceThreadOnly void changeMute(boolean mute) { assertRunOnServiceThread(); + if (getAvrDeviceInfo() == null) { + // On initialization process, getAvrDeviceInfo() may return null and cause exception + return; + } HdmiLogger.debug("[A]:Change mute:%b", mute); synchronized (mLock) { if (mSystemAudioMute == mute) { |