From d05f67f9721e1f9194a1f57cf7481b4be65366b3 Mon Sep 17 00:00:00 2001 From: Yuncheol Heo Date: Fri, 11 Jul 2014 16:06:40 +0900 Subject: [PATCH] Handle after . - Fix some wrong return values. Bug: 15841647 Change-Id: Ia4596e87204196b48429d55da4945f84de51a07b --- .../com/android/server/hdmi/HdmiCecLocalDeviceTv.java | 2 +- .../java/com/android/server/hdmi/SystemAudioAction.java | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java index 8adb07ba713ad..923b87d4ce560 100644 --- a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java +++ b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java @@ -540,7 +540,7 @@ final class HdmiCecLocalDeviceTv extends HdmiCecLocalDevice { assertRunOnServiceThread(); HdmiCecDeviceInfo avr = getAvrDeviceInfo(); if (avr == null) { - invokeCallback(callback, HdmiControlManager.RESULT_SOURCE_NOT_AVAILABLE); + invokeCallback(callback, HdmiControlManager.RESULT_TARGET_NOT_AVAILABLE); return; } diff --git a/services/core/java/com/android/server/hdmi/SystemAudioAction.java b/services/core/java/com/android/server/hdmi/SystemAudioAction.java index 01ba9cb3926e3..86895cc9651de 100644 --- a/services/core/java/com/android/server/hdmi/SystemAudioAction.java +++ b/services/core/java/com/android/server/hdmi/SystemAudioAction.java @@ -78,7 +78,7 @@ abstract class SystemAudioAction extends FeatureAction { addTimer(mState, mTargetAudioStatus ? ON_TIMEOUT_MS : OFF_TIMEOUT_MS); } else { setSystemAudioMode(false); - finishWithCallback(HdmiControlManager.RESULT_EXCEPTION); + finishWithCallback(HdmiControlManager.RESULT_COMMUNICATION_FAILED); } } }); @@ -102,7 +102,12 @@ abstract class SystemAudioAction extends FeatureAction { final boolean processCommand(HdmiCecMessage cmd) { switch (mState) { case STATE_WAIT_FOR_SET_SYSTEM_AUDIO_MODE: - // TODO: Handle of + if (cmd.getOpcode() == Constants.MESSAGE_FEATURE_ABORT + && cmd.getParams()[0] == Constants.MESSAGE_SYSTEM_AUDIO_MODE_REQUEST) { + setSystemAudioMode(false); + finishWithCallback(HdmiControlManager.RESULT_EXCEPTION); + return true; + } if (cmd.getOpcode() != Constants.MESSAGE_SET_SYSTEM_AUDIO_MODE || !HdmiUtils.checkCommandSource(cmd, mAvrLogicalAddress, TAG)) { return false;