- // transmit standard active source message
- return CCECCommandHandler::TransmitActiveSource(iInitiator, iPhysicalAddress);
- }
-}
-
-bool CVLCommandHandler::TransmitPendingActiveSourceCommands(void)
-{
- bool bTransmitCommand(false);
- {
- CLockObject lock(m_mutex);
- bTransmitCommand = m_bActiveSourcePending;
- m_bActiveSourcePending = false;
- }
-
- if (bTransmitCommand)
- {
- LIB_CEC->AddLog(CEC_LOG_DEBUG, "transmitting delayed activate source command");
- return CCECCommandHandler::TransmitActiveSource(m_busDevice->GetLogicalAddress(), m_busDevice->GetCurrentPhysicalAddress()) &&
- TransmitMenuState(m_busDevice->GetLogicalAddress(), CECDEVICE_TV, CEC_MENU_STATE_ACTIVATED);
- }
- return true;
-}
+ // get the current status
+ {
+ CLockObject lock(m_mutex);
+ bPowerUpEventReceived = m_iPowerUpEventReceived > 0 &&
+ GetTimeMs() - m_iPowerUpEventReceived > SOURCE_SWITCH_DELAY_MS;
+ }