X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Flib%2Fdevices%2FCECBusDevice.cpp;h=340602c3a22cb06043580c595ac27bc9e87231a5;hb=b4c4ef7d6a74e5f6f8f7c67f3d11454f32301b60;hp=52f0c207c6390701459a2239188cb924891f194b;hpb=6583c36581d07fbcda7e3f6fa11f7343b38a5be7;p=deb_libcec.git diff --git a/src/lib/devices/CECBusDevice.cpp b/src/lib/devices/CECBusDevice.cpp index 52f0c20..340602c 100644 --- a/src/lib/devices/CECBusDevice.cpp +++ b/src/lib/devices/CECBusDevice.cpp @@ -730,6 +730,10 @@ bool CCECBusDevice::TransmitOSDString(cec_logical_address dest, cec_display_cont bool CCECBusDevice::TransmitPhysicalAddress(void) { CLockObject lock(&m_writeMutex); + + if (m_iPhysicalAddress = 0xffff) + return false; + CStdString strLog; strLog.Format("<< %s (%X) -> broadcast (F): physical adddress %4x", GetLogicalAddressName(), m_iLogicalAddress, m_iPhysicalAddress); AddLog(CEC_LOG_NOTICE, strLog.c_str()); @@ -750,6 +754,8 @@ bool CCECBusDevice::TransmitPoll(cec_logical_address dest) if (dest == CECDEVICE_UNKNOWN) dest = m_iLogicalAddress; + CLockObject lock(&m_writeMutex); + CStdString strLog; strLog.Format("<< %s (%X) -> %s (%X): POLL", GetLogicalAddressName(), m_iLogicalAddress, ToString(dest), dest); AddLog(CEC_LOG_NOTICE, strLog.c_str()); @@ -764,12 +770,8 @@ bool CCECBusDevice::TransmitPoll(cec_logical_address dest) } AddLog(CEC_LOG_DEBUG, bReturn ? ">> POLL sent" : ">> POLL not sent"); - if (bReturn) - { - CLockObject lock(&m_writeMutex); m_iLastActive = GetTimeMs(); - } return bReturn; }