diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2004-08-08 14:31:33 +0200 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2004-08-08 14:31:33 +0200 |
commit | 15030f6acece1060f9736f875fe3abbcf9392263 (patch) | |
tree | c7809ce6dceea991901aad6bd77b7ceb6a5a3e0a | |
parent | c896678b0c32782b48540fcf4c48e063545c4365 (diff) | |
download | vdr-15030f6acece1060f9736f875fe3abbcf9392263.tar.gz vdr-15030f6acece1060f9736f875fe3abbcf9392263.tar.bz2 |
Fixed a crash in case the last line in channels.conf is a group separator
-rw-r--r-- | CONTRIBUTORS | 4 | ||||
-rw-r--r-- | HISTORY | 2 | ||||
-rw-r--r-- | menu.c | 9 |
3 files changed, 12 insertions, 3 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 50b2d3d2..1e7f92a5 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -1064,3 +1064,7 @@ Jörg Knitter <joerg.knitter@gmx.de> Mike parker <vdr@msatt.freeserve.co.uk> for helping to test support for NVOD channels + +Dick Streefland <Dick.Streefland@xs4all.nl> + for fixing a crash in case the last line in channels.conf is a group separator and + that group is selected in the channel display @@ -2974,3 +2974,5 @@ Video Disk Recorder Revision History (thanks to Andreas Share for pointing this out). - Fixed a possible NULL pointer assignment in cMenuText::SetText() (thanks to Marco Schlüssler). +- Fixed a crash in case the last line in channels.conf is a group separator and + that group is selected in the channel display (thanks to Dick Streefland). @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: menu.c 1.310 2004/08/08 14:19:37 kls Exp $ + * $Id: menu.c 1.311 2004/08/08 14:29:14 kls Exp $ */ #include "menu.h" @@ -2628,8 +2628,11 @@ eOSState cDisplayChannel::ProcessKey(eKeys Key) //TODO //XXX case kGreen: return osEventNow; //XXX case kYellow: return osEventNext; - case kOk: if (group >= 0) - Channels.SwitchTo(Channels.Get(Channels.GetNextNormal(group))->Number()); + case kOk: if (group >= 0) { + cChannel *channel = Channels.Get(Channels.GetNextNormal(group)); + if (channel) + Channels.SwitchTo(channel->Number()); + } return osEnd; default: if ((Key & (k_Repeat | k_Release)) == 0) { cRemote::Put(Key); |