- CStdString strLog;
- strLog.Format("<< %s (%X) -> %s (%X): deck status '%s'", GetLogicalAddressName(), m_iLogicalAddress, CCECCommandHandler::ToString(dest), dest, CCECCommandHandler::ToString(m_deckStatus));
- AddLog(CEC_LOG_NOTICE, strLog);
-
- cec_command command;
- cec_command::Format(command, m_iLogicalAddress, dest, CEC_OPCODE_DECK_STATUS);
- command.PushBack((uint8_t)m_deckStatus);
+ cec_deck_info state;
+ {
+ CLockObject lock(&m_writeMutex);
+ CStdString strLog;
+ strLog.Format("<< %s (%X) -> %s (%X): deck status '%s'", GetLogicalAddressName(), m_iLogicalAddress, ToString(dest), dest, ToString(m_deckStatus));
+ AddLog(CEC_LOG_NOTICE, strLog);
+ state = m_deckStatus;
+ }