Now resetting the channel number if the number entered through the numeric keys exceeds the maximum channel number

This commit is contained in:
Klaus Schmidinger 2006-02-18 12:47:01 +01:00
parent 273d6c53a6
commit 53f77ddded
3 changed files with 9 additions and 2 deletions

View File

@ -958,6 +958,8 @@ Rolf Ahrenberg <rahrenbe@cc.hut.fi>
for reporting a problem with expired timers when shutting down via the Power key
for fixing handling the "Blue" key in the "Schedule" menu for the current channel
for making cMenuText use the given font
for making the channel number be reset if the number entered through the numeric keys
exceeds the maximum channel number
Ralf Klueber <ralf.klueber@vodafone.com>
for reporting a bug in cutting a recording if there is only a single editing mark

View File

@ -4339,3 +4339,5 @@ Video Disk Recorder Revision History
- Made CharArray::DataOwnData::assign() in 'libsi' more robust against invalid
data (suggested by Oliver Endriss). Also changed CharArray::DataOwnData::Delete()
so that it sets 'size' and 'data' to 0.
- Now resetting the channel number if the number entered through the numeric keys
exceeds the maximum channel number (thanks to Rolf Ahrenberg).

7
menu.c
View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: menu.c 1.411 2006/02/17 15:38:46 kls Exp $
* $Id: menu.c 1.412 2006/02/18 12:42:24 kls Exp $
*/
#include "menu.h"
@ -3105,7 +3105,10 @@ eOSState cDisplayChannel::ProcessKey(eKeys Key)
}
case k1 ... k9:
if (number >= 0) {
number = number * 10 + Key - k0;
if (number > Channels.MaxNumber())
number = Key - k0;
else
number = number * 10 + Key - k0;
channel = Channels.GetByNumber(number);
displayChannel->SetEvents(NULL, NULL);
withInfo = false;