From 7d27bafc81161bf5d86e4d5bf2e833ca72d1d130 Mon Sep 17 00:00:00 2001 From: Lars Op den Kamp Date: Mon, 3 Sep 2012 17:26:04 +0200 Subject: [PATCH] rpi: handle VC_CEC_LOGICAL_ADDR_LOST. re-register the client when this happens, so a new LA is assigned --- src/lib/adapter/RPi/RPiCECAdapterCommunication.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/lib/adapter/RPi/RPiCECAdapterCommunication.cpp b/src/lib/adapter/RPi/RPiCECAdapterCommunication.cpp index 5e1efd4..9e7f604 100644 --- a/src/lib/adapter/RPi/RPiCECAdapterCommunication.cpp +++ b/src/lib/adapter/RPi/RPiCECAdapterCommunication.cpp @@ -180,6 +180,14 @@ void CRPiCECAdapterCommunication::OnDataReceived(uint32_t header, uint32_t p0, u m_logicalAddressCondition.Signal(); } break; + case VC_CEC_LOGICAL_ADDR_LOST: + { + // the logical address was taken by another device + cec_logical_address previousAddress = m_logicalAddress; + m_logicalAddress = CECDEVICE_UNKNOWN; + m_callback->HandleLogicalAddressLost(previousAddress); + } + break; case VC_CEC_TOPOLOGY: case VC_CEC_REMOTE_PRESSED: case VC_CEC_REMOTE_RELEASE: -- 2.34.1