diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2002-04-06 13:21:47 +0200 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2002-04-06 13:21:47 +0200 |
commit | d00b5d8828ca997e0cfbced124de645594565837 (patch) | |
tree | e1b193620b5846ef8b5f8ec6c4c65cd29cc14047 /dvbapi.c | |
parent | cb0e6f1b14caedc72675d2535cf8ee9aa354fcc2 (diff) | |
download | vdr-d00b5d8828ca997e0cfbced124de645594565837.tar.gz vdr-d00b5d8828ca997e0cfbced124de645594565837.tar.bz2 |
Now the EPG scan skips channels that have their 'Ca' parameter explicitly set to an other DVB card
Diffstat (limited to 'dvbapi.c')
-rw-r--r-- | dvbapi.c | 18 |
1 files changed, 11 insertions, 7 deletions
@@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: dvbapi.c 1.167 2002/04/06 11:08:54 kls Exp $ + * $Id: dvbapi.c 1.168 2002/04/06 13:14:40 kls Exp $ */ #include "dvbapi.h" @@ -2804,12 +2804,16 @@ void cEITScanner::Process(void) numTransponders = 0; } cChannel *Channel = Channels.GetByNumber(ch); - if (Channel && Channel->pnr && !TransponderScanned(Channel)) { - if (DvbApi == cDvbApi::PrimaryDvbApi && !currentChannel) - currentChannel = DvbApi->Channel(); - Channel->Switch(DvbApi, false); - lastChannel = ch; - break; + if (Channel) { + if (Channel->ca <= MAXDVBAPI && !DvbApi->ProvidesCa(Channel->ca)) + break; // the channel says it explicitly needs a different card + if (Channel->pnr && !TransponderScanned(Channel)) { + if (DvbApi == cDvbApi::PrimaryDvbApi && !currentChannel) + currentChannel = DvbApi->Channel(); + Channel->Switch(DvbApi, false); + lastChannel = ch; + break; + } } ch++; } |