summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CONTRIBUTORS4
-rw-r--r--HISTORY3
-rw-r--r--eitscan.c4
3 files changed, 9 insertions, 2 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index e95b6ef0..d43a2192 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -1442,3 +1442,7 @@ Thomas Günther <tom1@toms-cafe.de>
David Woodhouse <dwmw2@infradead.org>
for his help in replacing the get/put_unaligned() macros from asm/unaligned.h with
own inline functions to avoid problems on platforms that don't provide these
+
+Marcus Hilbrich <s4440288@mail.inf.tu-dresden.de>
+ for a bug report that lead to fixing the EPG scan, so that it doesn't use the
+ primary device if that is currently in Transfer-Mode from itself
diff --git a/HISTORY b/HISTORY
index 73be00c4..d6a38df7 100644
--- a/HISTORY
+++ b/HISTORY
@@ -3727,3 +3727,6 @@ Video Disk Recorder Revision History
- Modified handling of audio packets for radio channels in remux.c (thanks to
Reinhard Nissl).
- Updated the Danish OSD texts (thanks to Mogens Elneff).
+- Fixed the EPG scan, so that it doesn't use the primary device if that is
+ currently in Transfer-Mode from itself (thanks to Marcus Hilbrich for a bug
+ report that lead to this).
diff --git a/eitscan.c b/eitscan.c
index 3894bcac..10739c31 100644
--- a/eitscan.c
+++ b/eitscan.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: eitscan.c 1.27 2005/08/07 11:29:54 kls Exp $
+ * $Id: eitscan.c 1.28 2005/08/26 15:37:06 kls Exp $
*/
#include "eitscan.h"
@@ -150,7 +150,7 @@ void cEITScanner::Process(void)
if (!Channel->Ca() || Channel->Ca() == Device->DeviceNumber() + 1 || Channel->Ca() >= 0x0100) {
if (Device->ProvidesTransponder(Channel)) {
if (!Device->Receiving()) {
- bool IsPrimaryDeviceReplaying = Device == cDevice::PrimaryDevice() && Device->Replaying();
+ bool IsPrimaryDeviceReplaying = Device == cDevice::PrimaryDevice() && Device->Replaying() && cTransferControl::ReceiverDevice() != cDevice::PrimaryDevice();
if (Device != cDevice::ActualDevice() || (Device->ProvidesTransponderExclusively(Channel) && (IsPrimaryDeviceReplaying || now - lastActivity > Setup.EPGScanTimeout * 3600))) {
if (!IsPrimaryDeviceReplaying && Device == cDevice::ActualDevice() && !currentChannel) {
if (cTransferControl::ReceiverDevice())