summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CONTRIBUTORS4
-rw-r--r--HISTORY2
-rw-r--r--menu.c9
3 files changed, 11 insertions, 4 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index ce3c0ce9..4b2e571d 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -1157,11 +1157,13 @@ Andreas Regel <andreas.regel@gmx.de>
for reporting a problem with messages when a cOsdObject uses the raw OSD
for implementing palette replace mode in the OSD bitmaps
-Thomas Bergwinkl <Thomas.Bergwinkl@t-online.de>
+Thomas Bergwinkl <Thomas.Bergwinkl@vr-web.de>
for fixing the validity check for channel IDs, because some providers use TIDs
with value 0
for pointing out that transponder handling didn't work with satellites that provide
two transponders on the same frequency, with different polarization
+ for fixing detecting if there can be any useful further input when entering channel
+ numbers
Stéphane Esté-Gracias <sestegra@free.fr>
for fixing a typo in libsi/si.h
diff --git a/HISTORY b/HISTORY
index c09ce5c0..ca97b274 100644
--- a/HISTORY
+++ b/HISTORY
@@ -4222,3 +4222,5 @@ Video Disk Recorder Revision History
the final switch when the key is released.
- The channel display is now updated _before_ the channel is switched.
- Added a missing initialization of 'timeout' in the cDisplayChannel constructor.
+- Fixed detecting if there can be any useful further input when entering channel
+ numbers (thanks to Thomas Bergwinkl).
diff --git a/menu.c b/menu.c
index a36ca271..3eb9f829 100644
--- a/menu.c
+++ b/menu.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: menu.c 1.400 2006/01/22 14:24:02 kls Exp $
+ * $Id: menu.c 1.401 2006/01/22 14:30:00 kls Exp $
*/
#include "menu.h"
@@ -3107,15 +3107,18 @@ eOSState cDisplayChannel::ProcessKey(eKeys Key)
DisplayChannel();
// Lets see if there can be any useful further input:
int n = channel ? number * 10 : 0;
+ int m = 10;
cChannel *ch = channel;
while (ch && (ch = Channels.Next(ch)) != NULL) {
if (!ch->GroupSep()) {
- if (n <= ch->Number() && ch->Number() <= n + 9) {
+ if (n <= ch->Number() && ch->Number() < n + m) {
n = 0;
break;
}
- if (ch->Number() > n)
+ if (ch->Number() > n) {
n *= 10;
+ m *= 10;
+ }
}
}
if (n > 0) {