repositories
/
deb_libcec.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
cec: don't keep trying the same command/request after receiving a feature abort message
[deb_libcec.git]
/
src
/
lib
/
implementations
/
CECCommandHandler.cpp
diff --git
a/src/lib/implementations/CECCommandHandler.cpp
b/src/lib/implementations/CECCommandHandler.cpp
index 3906060691712eb822137a5c0dc2978b7e433351..8d16a02fded9c611518c66207693ea95e29385d0 100644
(file)
--- a/
src/lib/implementations/CECCommandHandler.cpp
+++ b/
src/lib/implementations/CECCommandHandler.cpp
@@
-158,6
+158,9
@@
bool CCECCommandHandler::HandleCommand(const cec_command &command)
case CEC_OPCODE_TEXT_VIEW_ON:
HandleTextViewOn(command);
break;
case CEC_OPCODE_TEXT_VIEW_ON:
HandleTextViewOn(command);
break;
+ case CEC_OPCODE_FEATURE_ABORT:
+ HandleFeatureAbort(command);
+ break;
default:
UnhandledCommand(command);
bHandled = false;
default:
UnhandledCommand(command);
bHandled = false;
@@
-221,6
+224,14
@@
bool CCECCommandHandler::HandleDeviceVendorId(const cec_command &command)
return SetVendorId(command);
}
return SetVendorId(command);
}
+bool CCECCommandHandler::HandleFeatureAbort(const cec_command &command)
+{
+ if (command.parameters.size == 2)
+ {
+ m_processor->m_busDevices[command.initiator]->SetUnsupportedFeature((cec_opcode)command.parameters[0]);
+ }
+}
+
bool CCECCommandHandler::HandleGetCecVersion(const cec_command &command)
{
if (m_processor->IsStarted() && m_busDevice->MyLogicalAddressContains(command.destination))
bool CCECCommandHandler::HandleGetCecVersion(const cec_command &command)
{
if (m_processor->IsStarted() && m_busDevice->MyLogicalAddressContains(command.destination))