switching away live TV failed even when "always suspended"

The vdr main loop usually switches back to the previous channel at
"Make sure we have a visible programme in case device usage has changed"
(#472)
This commit is contained in:
Frank Schmirler 2010-12-10 17:03:04 +01:00
parent 0c07109974
commit a35675490d
3 changed files with 11 additions and 2 deletions

View File

@ -174,3 +174,6 @@ Rainer Blickle
Gavin Hamill
for reporting that ES/PS/PES no longer works
Michal Novotny
for reporting that switching away live TV fails when "always suspended"

View File

@ -1,6 +1,8 @@
VDR Plugin 'streamdev' Revision History
---------------------------------------
- switching away live TV failed even when "always suspended" (reported by
Michal Novotny)
- fixed regression: no receiver created for ES/PS/PES (reported by Gavin
Hamill)
- VTP no longer uses a static priority value for its server-side receivers.

View File

@ -296,7 +296,6 @@ cDevice *cServerConnection::GetDevice(const cChannel *Channel, int Priority)
if (device && device == cDevice::ActualDevice()
&& !cSuspendCtl::IsActive()
&& StreamdevServerSetup.SuspendMode != smAlways
&& current != NULL
&& !TRANSPONDER(Channel, current)) {
// now we would have to switch away live tv...let's see if live tv
@ -307,8 +306,13 @@ cDevice *cServerConnection::GetDevice(const cChannel *Channel, int Priority)
#else
cDevice *newdev = CheckDevice(current, 0, true, device);
#endif
if (newdev)
if (newdev) {
newdev->SwitchChannel(current, true);
}
else if (StreamdevServerSetup.SuspendMode == smAlways) {
Channels.SwitchTo(Channel->Number());
Skins.Message(mtInfo, tr("Streaming active"));
}
else
device = NULL;
}