From 00762a71e9bdc59bfbe263d20b33ced5bcea2fb0 Mon Sep 17 00:00:00 2001 From: Lars Op den Kamp Date: Fri, 25 Nov 2011 12:37:12 +0100 Subject: [PATCH] cec: always send a power on command in CCECBusDevice::PowerOn() --- src/lib/devices/CECBusDevice.cpp | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/src/lib/devices/CECBusDevice.cpp b/src/lib/devices/CECBusDevice.cpp index 3d8feaf..42aa02c 100644 --- a/src/lib/devices/CECBusDevice.cpp +++ b/src/lib/devices/CECBusDevice.cpp @@ -109,23 +109,19 @@ void CCECBusDevice::PollVendorId(void) bool CCECBusDevice::PowerOn(void) { - cec_power_status current = GetPowerStatus(); - if (current != CEC_POWER_STATUS_ON && - current != CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON) - { - CStdString strLog; - strLog.Format("<< powering on '%s' (%X)", GetLogicalAddressName(), m_iLogicalAddress); - AddLog(CEC_LOG_DEBUG, strLog.c_str()); - - SetPowerStatus(CEC_POWER_STATUS_IN_TRANSITION_STANDBY_TO_ON); - - cec_command command; - cec_command::Format(command, GetMyLogicalAddress(), m_iLogicalAddress, CEC_OPCODE_IMAGE_VIEW_ON); - - return m_processor->Transmit(command); + CStdString strLog; + strLog.Format("<< powering on '%s' (%X)", GetLogicalAddressName(), m_iLogicalAddress); + AddLog(CEC_LOG_DEBUG, strLog.c_str()); + + cec_command command; + cec_command::Format(command, GetMyLogicalAddress(), m_iLogicalAddress, CEC_OPCODE_IMAGE_VIEW_ON); + if (m_processor->Transmit(command)) + { + GetPowerStatus(); + return true; } - return true; + return false; } bool CCECBusDevice::Standby(void) -- 2.34.1