From: Lars Op den Kamp Date: Wed, 21 Dec 2011 23:37:49 +0000 (+0100) Subject: cec: simplify CCECProcessor::SetHDMIPort() X-Git-Tag: upstream/2.2.0~1^2~43^2~22 X-Git-Url: https://git.piment-noir.org/?a=commitdiff_plain;h=5d355340846c8fa87486dd85d817405c9619b544;p=deb_libcec.git cec: simplify CCECProcessor::SetHDMIPort() --- diff --git a/src/lib/CECProcessor.cpp b/src/lib/CECProcessor.cpp index cc5cd40..770b24b 100644 --- a/src/lib/CECProcessor.cpp +++ b/src/lib/CECProcessor.cpp @@ -425,35 +425,17 @@ bool CCECProcessor::SetHDMIPort(cec_logical_address iBaseDevice, uint8_t iPort, } else { - uint16_t iPos = 0; if (iPhysicalAddress == 0) - iPos = 0x1000; + iPhysicalAddress += 0x1000 * iPort; else if (iPhysicalAddress % 0x1000 == 0) - iPos = 0x100; + iPhysicalAddress += 0x100 * iPort; else if (iPhysicalAddress % 0x100 == 0) - iPos = 0x10; + iPhysicalAddress += 0x10 * iPort; else if (iPhysicalAddress % 0x10 == 0) - iPos = 0x1; + iPhysicalAddress += iPort; - while(!bReturn && iPos > 0) - { - iPhysicalAddress += (uint16_t)(iPort * iPos); - strLog.Format("checking physical address %4x", iPhysicalAddress); - AddLog(CEC_LOG_DEBUG, strLog); - if (PhysicalAddressInUse(iPhysicalAddress)) - { - strLog.Format("physical address %4x is in use", iPhysicalAddress); - AddLog(CEC_LOG_DEBUG, strLog); - iPos = (iPos == 1) ? 0 : iPos / 0x10; - } - else - { - strLog.Format("physical address %4x is free", iPhysicalAddress); - AddLog(CEC_LOG_DEBUG, strLog); - SetPhysicalAddress(iPhysicalAddress); - bReturn = true; - } - } + SetPhysicalAddress(iPhysicalAddress); + bReturn = true; } return bReturn;