Removed switching to the next higher or lower channel if the current channel is not available

This commit is contained in:
Klaus Schmidinger 2008-01-27 14:40:11 +01:00
parent d0af2f90e7
commit 6a4852710b
2 changed files with 5 additions and 4 deletions

View File

@ -5575,3 +5575,6 @@ Video Disk Recorder Revision History
- Implemented handling of DVB-S2 (thanks to Marco Schlüßler and Reinhald Nissl
for a patch that was used to implement this). VDR now requires the "multiproto"
DVB driver, e.g. from http://jusst.de/hg/multiproto.
- Removed switching to the next higher or lower channel if the current channel
is not available, in order to allow staying on an encrypted channel that takes
a while for the CAM to start decrypting.

6
vdr.c
View File

@ -22,7 +22,7 @@
*
* The project's page is at http://www.cadsoft.de/vdr
*
* $Id: vdr.c 1.306 2008/01/19 12:25:54 kls Exp $
* $Id: vdr.c 1.307 2008/01/27 14:38:45 kls Exp $
*/
#include <getopt.h>
@ -730,9 +730,7 @@ int main(int argc, char *argv[])
cChannel *Channel = Channels.GetByNumber(cDevice::CurrentChannel());
if (Channel && (Channel->Vpid() || Channel->Apid(0))) {
if (!Channels.SwitchTo(cDevice::CurrentChannel()) // try to switch to the original channel...
&& !(LastTimerChannel > 0 && Channels.SwitchTo(LastTimerChannel)) // ...or the one used by the last timer...
&& !cDevice::SwitchChannel(1) // ...or the next higher available one...
&& !cDevice::SwitchChannel(-1)) // ...or the next lower available one
&& !(LastTimerChannel > 0 && Channels.SwitchTo(LastTimerChannel))) // ...or the one used by the last timer...
;
}
lastTime = Now; // don't do this too often