cec: fixed - mark a device as active source before transmitting the active source...
[deb_libcec.git] / src / lib / implementations / SLCommandHandler.cpp
index 809558be4d814bc71ebfde6fa331ef8c1b5a7531..0f007176d623f9e83732abbef114790b97446d28 100644 (file)
@@ -145,8 +145,8 @@ void CSLCommandHandler::HandleVendorCommandPowerOn(const cec_command &command)
 void CSLCommandHandler::HandleVendorCommandSLConnect(const cec_command &command)
 {
   m_bSLEnabled = true;
+  m_processor->m_busDevices[command.initiator]->SetActiveSource();
   m_processor->m_busDevices[command.destination]->TransmitActiveSource();
-  m_processor->SetStreamPath(m_processor->m_busDevices[command.destination]->GetPhysicalAddress(false));
   TransmitVendorCommand05(command.destination, command.initiator);
   TransmitDeckStatus(command.initiator);
 }
@@ -289,6 +289,7 @@ bool CSLCommandHandler::InitHandler(void)
                        device->GetType() == CEC_DEVICE_TYPE_RECORDING_DEVICE))
         {
           ((CCECPlaybackDevice *)device)->SetDeckStatus(CEC_DECK_INFO_OTHER_STATUS_LG);
+          ((CCECPlaybackDevice *)device)->TransmitDeckStatus(CECDEVICE_TV);
         }
       }
     }