X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Flib%2Fadapter%2FPulse-Eight%2FUSBCECAdapterMessageQueue.cpp;h=4e4c2cb82a678e1b0f63e94d1b2b82bfe7b5b49b;hb=ad07087d787297cc3d57858a012e26babc91e306;hp=1b14f445f30e9bfc43afbef5304296d3277cb619;hpb=90b7066f7129c01c5bd012a00677ebdc0c42ae89;p=deb_libcec.git diff --git a/src/lib/adapter/Pulse-Eight/USBCECAdapterMessageQueue.cpp b/src/lib/adapter/Pulse-Eight/USBCECAdapterMessageQueue.cpp index 1b14f44..4e4c2cb 100644 --- a/src/lib/adapter/Pulse-Eight/USBCECAdapterMessageQueue.cpp +++ b/src/lib/adapter/Pulse-Eight/USBCECAdapterMessageQueue.cpp @@ -164,12 +164,13 @@ bool CCECAdapterMessageQueueEntry::IsResponse(const CCECAdapterMessage &msg) thisMsgCode == MSGCODE_SET_HDMI_VERSION || thisMsgCode == MSGCODE_SET_OSD_NAME || thisMsgCode == MSGCODE_WRITE_EEPROM || - thisMsgCode == MSGCODE_TRANSMIT_IDLETIME) + thisMsgCode == MSGCODE_TRANSMIT_IDLETIME || + thisMsgCode == MSGCODE_SET_ACTIVE_SOURCE) return thisMsgCode == msgResponse; if (!m_message->IsTranmission()) { - m_queue->m_com->m_callback->GetLib()->AddLog(CEC_LOG_WARNING, "FIXME! not a transmission"); + m_queue->m_com->m_callback->GetLib()->AddLog(CEC_LOG_WARNING, "FIXME! not a transmission: %s", msg.ToString().c_str()); return false; } @@ -262,6 +263,9 @@ bool CCECAdapterMessageQueueEntry::MessageReceivedResponse(const CCECAdapterMess CLockObject lock(m_mutex); #ifdef CEC_DEBUGGING m_queue->m_com->m_callback->GetLib()->AddLog(CEC_LOG_DEBUG, "%s - received response - %s", ToString(), message.ToString().c_str()); +#else + if (message.IsError()) + m_queue->m_com->m_callback->GetLib()->AddLog(CEC_LOG_DEBUG, "%s - received response - %s", ToString(), message.ToString().c_str()); #endif m_message->response = message.packet; if (m_message->IsTranmission()) @@ -462,7 +466,7 @@ bool CCECAdapterMessageQueue::Write(CCECAdapterMessage *msg) m_messages.erase(iEntryId); } - if (msg->ReplyIsError()) + if (msg->ReplyIsError() && msg->state != ADAPTER_MESSAGE_STATE_SENT_NOT_ACKED) msg->state = ADAPTER_MESSAGE_STATE_ERROR; delete entry;