diff options
Diffstat (limited to 'services')
-rw-r--r-- | services/core/java/com/android/server/hdmi/HdmiCecController.java | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/services/core/java/com/android/server/hdmi/HdmiCecController.java b/services/core/java/com/android/server/hdmi/HdmiCecController.java index 72519f2..cbccc1d 100644 --- a/services/core/java/com/android/server/hdmi/HdmiCecController.java +++ b/services/core/java/com/android/server/hdmi/HdmiCecController.java @@ -506,15 +506,20 @@ final class HdmiCecController { && mService.handleCecCommand(message)) { return; } - - if (message.getDestination() != Constants.ADDR_BROADCAST) { - int sourceAddress = message.getDestination(); - // Reply <Feature Abort> to initiator (source) for all requests. - HdmiCecMessage cecMessage = HdmiCecMessageBuilder.buildFeatureAbortCommand( - sourceAddress, message.getSource(), message.getOpcode(), - Constants.ABORT_REFUSED); - sendCommand(cecMessage); + if (message.getDestination() == Constants.ADDR_BROADCAST) { + return; } + if (message.getOpcode() == Constants.MESSAGE_FEATURE_ABORT) { + Slog.v(TAG, "Unhandled <Feature Abort> message:" + message); + return; + } + + int sourceAddress = message.getDestination(); + // Reply <Feature Abort> to initiator (source) for all requests. + HdmiCecMessage cecMessage = HdmiCecMessageBuilder.buildFeatureAbortCommand( + sourceAddress, message.getSource(), message.getOpcode(), + Constants.ABORT_REFUSED); + sendCommand(cecMessage); } @ServiceThreadOnly |