summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CONTRIBUTORS3
-rw-r--r--HISTORY1
-rw-r--r--interface.c7
-rw-r--r--remote.h3
4 files changed, 11 insertions, 3 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 4a21c4a4..104e1516 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -1801,3 +1801,6 @@ Oleg Roitburd <oleg@roitburd.de>
Marius Heidenstecker <marius@heidenstecker.de>
for suggesting to make cMenuRecordings::GetRecording() 'protected'
+
+Jurij Retzlaff <jurij@topofweb.de>
+ for fixing learning keys when VDR is already running
diff --git a/HISTORY b/HISTORY
index 7826b527..b31f188b 100644
--- a/HISTORY
+++ b/HISTORY
@@ -4465,3 +4465,4 @@ Video Disk Recorder Revision History
- Fixed broken entry 'A111.1W' in sources.conf (reported by Luca Olivetti).
- Replaced the obsolete entry 'S21.5E' in the default 'diseqc.conf' with 'S13.0E'
(reported by Ville Skyttä).
+- Fixed learning keys when VDR is already running (thanks to Jurij Retzlaff).
diff --git a/interface.c b/interface.c
index 59147f4b..9c4aefa9 100644
--- a/interface.c
+++ b/interface.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: interface.c 1.74 2006/03/25 11:50:55 kls Exp $
+ * $Id: interface.c 1.75 2006/03/31 14:20:04 kls Exp $
*/
#include "interface.h"
@@ -37,7 +37,10 @@ eKeys cInterface::GetKey(bool Wait)
if (SVDRP->Process())
Wait = false;
}
- return cRemote::Get(Wait ? 1000 : 10);
+ if (!cRemote::IsLearning())
+ return cRemote::Get(Wait ? 1000 : 10);
+ else
+ return kNone;
}
eKeys cInterface::Wait(int Seconds, bool KeepChar)
diff --git a/remote.h b/remote.h
index 0213b0cf..ce6055ff 100644
--- a/remote.h
+++ b/remote.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: remote.h 1.33 2006/01/29 12:27:08 kls Exp $
+ * $Id: remote.h 1.34 2006/03/31 14:18:44 kls Exp $
*/
#ifndef __REMOTE_H
@@ -42,6 +42,7 @@ public:
virtual bool Initialize(void);
const char *Name(void) { return name; }
static void SetLearning(cRemote *Learning) { learning = Learning; }
+ static bool IsLearning() { return learning != NULL; }
static void Clear(void);
static bool Put(eKeys Key, bool AtFront = false);
static bool PutMacro(eKeys Key);