X-Git-Url: https://git.piment-noir.org/?p=deb_libcec.git;a=blobdiff_plain;f=src%2Flib%2Fimplementations%2FCECCommandHandler.cpp;h=ee602f1e6dfa90ecc7242f003fdbba374aeda5a4;hp=cee3c85add8ad84c5c265653d02afebea90108af;hb=14004a262acba6d284ce6489ef18468bdc1a6e5c;hpb=1db788cb36e0549150ac61c34db3bdd190f33e93 diff --git a/src/lib/implementations/CECCommandHandler.cpp b/src/lib/implementations/CECCommandHandler.cpp index cee3c85..ee602f1 100644 --- a/src/lib/implementations/CECCommandHandler.cpp +++ b/src/lib/implementations/CECCommandHandler.cpp @@ -455,6 +455,13 @@ int CCECCommandHandler::HandleReportPhysicalAddress(const cec_command &command) { uint16_t iNewAddress = ((uint16_t)command.parameters[0] << 8) | ((uint16_t)command.parameters[1]); SetPhysicalAddress(command.initiator, iNewAddress); + + if (command.initiator == CECDEVICE_TV) + { + CCECBusDevice* primary = m_processor->GetPrimaryDevice(); + if (primary) + primary->TransmitPhysicalAddress(false); + } return COMMAND_HANDLED; } return CEC_ABORT_REASON_INVALID_OPERAND;