summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2014-01-26 12:27:51 +0100
committerKlaus Schmidinger <vdr@tvdr.de>2014-01-26 12:27:51 +0100
commitc2826000bb32f5b1d381967639b5fa9d0339d19d (patch)
treee923aeeb09cfb9c916e540a55a4fe5bf6459054d
parent7cea5df0744680edc07ad15d47c26339beb2b768 (diff)
downloadvdr-c2826000bb32f5b1d381967639b5fa9d0339d19d.tar.gz
vdr-c2826000bb32f5b1d381967639b5fa9d0339d19d.tar.bz2
Now checking whether the primary device atcually has a decoder before retuning the current channel after a change in its parameters
-rw-r--r--vdr.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/vdr.c b/vdr.c
index c03d7776..ff4688ee 100644
--- a/vdr.c
+++ b/vdr.c
@@ -22,7 +22,7 @@
*
* The project's page is at http://www.tvdr.de
*
- * $Id: vdr.c 3.9 2014/01/25 10:47:39 kls Exp $
+ * $Id: vdr.c 3.10 2014/01/26 12:27:51 kls Exp $
*/
#include <getopt.h>
@@ -917,7 +917,7 @@ int main(int argc, char *argv[])
for (cChannel *Channel = Channels.First(); Channel; Channel = Channels.Next(Channel)) {
if (Channel->Modification(CHANNELMOD_RETUNE)) {
cRecordControls::ChannelDataModified(Channel);
- if (Channel->Number() == cDevice::CurrentChannel()) {
+ if (Channel->Number() == cDevice::CurrentChannel() && cDevice::PrimaryDevice()->HasDecoder()) {
if (!cDevice::PrimaryDevice()->Replaying() || cDevice::PrimaryDevice()->Transferring()) {
if (cDevice::ActualDevice()->ProvidesTransponder(Channel)) { // avoids retune on devices that don't really access the transponder
isyslog("retuning due to modification of channel %d", Channel->Number());