send active source message when we received a routing change with a device that is...
authorLars Op den Kamp <lars@opdenkamp.eu>
Wed, 14 Nov 2012 23:42:34 +0000 (00:42 +0100)
committerLars Op den Kamp <lars@opdenkamp.eu>
Wed, 14 Nov 2012 23:42:57 +0000 (00:42 +0100)
src/lib/devices/CECBusDevice.cpp

index de75db5760b7e3bff8f3c365cc08ecdc07c8b7cf..3217f7151bbbaf64674827901a2c134f9f1f5a50 100644 (file)
@@ -1130,9 +1130,12 @@ void CCECBusDevice::SetActiveRoute(uint16_t iRoute)
   if (!map)
     return;
 
-  CCECBusDevice* previouslyActive = map->GetActiveSource();
-  if (!previouslyActive)
+  CCECBusDevice* newRoute = m_processor->GetDeviceByPhysicalAddress(iRoute, true);
+  if (newRoute && newRoute->IsHandledByLibCEC())
+  {
+    ActivateSource();
     return;
+  }
 
   CECDEVICEVEC devices;
   m_processor->GetDevices()->GetChildrenOf(devices, this);