diff options
Diffstat (limited to 'dvbdevice.c')
-rw-r--r-- | dvbdevice.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/dvbdevice.c b/dvbdevice.c index 01a9a6c..e1d5fc6 100644 --- a/dvbdevice.c +++ b/dvbdevice.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: dvbdevice.c 1.79 2004/01/25 13:50:21 kls Exp $ + * $Id: dvbdevice.c 1.81 2004/02/08 14:07:07 kls Exp $ */ #include "dvbdevice.h" @@ -680,7 +680,7 @@ bool cDvbDevice::ProvidesChannel(const cChannel *Channel, int Priority, bool *Ne bool hasPriority = Priority < 0 || Priority > this->Priority(); bool needsDetachReceivers = false; - if ((Channel->Vpid() || Channel->Apid1()) && ProvidesSource(Channel->Source()) && ProvidesCa(Channel)) { + if (ProvidesSource(Channel->Source()) && ProvidesCa(Channel)) { result = hasPriority; if (Priority >= 0 && Receiving()) { if (dvbTuner->IsTunedTo(Channel)) { @@ -751,6 +751,11 @@ bool cDvbDevice::SetChannelDevice(const cChannel *Channel, bool LiveView) dvbTuner->Set(Channel, DoTune, !EITScanner.UsesDevice(this)); //XXX 1.3: this is an ugly hack - find a cleaner solution//XXX + //XXX TODO preliminary fix for the "Unknown picture type" error + time_t t0 = time(NULL); + while (!dvbTuner->Locked() && time(NULL) - t0 < 5) + usleep(100); + //XXX // PID settings: if (TurnOnLivePIDs) { |