From a86ed8181bc949c55ed808592471494a925e69a8 Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Sat, 26 Apr 2003 13:53:50 +0200 Subject: [PATCH] Fixed deleting the last recording in the 'Recordings' menu, which started pausing live video --- CONTRIBUTORS | 4 ++++ HISTORY | 2 ++ menu.c | 12 +++++++----- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index d05b9282..c7939fc3 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -592,3 +592,7 @@ Thomas Koch Stefan Hußfeldt for his help in keeping 'channels.conf.cable' up to date + +Christoph Friederich + for reporting a bug in deleting the last recording in the "Recordings" menu, which + started pausing live video diff --git a/HISTORY b/HISTORY index 539a3e9c..d5a6c198 100644 --- a/HISTORY +++ b/HISTORY @@ -2065,3 +2065,5 @@ Video Disk Recorder Revision History with the audio PIDs, because this is not an alternate PID, but rather an additional, necessary PID. In order to use this feature you need a driver version dated 2003-04-27 or higher (setting the PCR PID didn't work in earlier versions). +- Fixed deleting the last recording in the "Recordings" menu, which started pausing + live video (thanks to Christoph Friederich for reporting this one). diff --git a/menu.c b/menu.c index 17954683..388e01bd 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.238 2003/04/26 11:50:14 kls Exp $ + * $Id: menu.c 1.239 2003/04/26 13:51:19 kls Exp $ */ #include "menu.h" @@ -2496,8 +2496,10 @@ void cMenuMain::Set(const char *Plugin) eOSState cMenuMain::ProcessKey(eKeys Key) { + bool HadSubMenu = HasSubMenu(); int osdLanguage = Setup.OSDLanguage; eOSState state = cOsdMenu::ProcessKey(Key); + HadSubMenu |= HasSubMenu(); switch (state) { case osSchedule: return AddSubMenu(new cMenuSchedule); @@ -2544,10 +2546,10 @@ eOSState cMenuMain::ProcessKey(eKeys Key) break; default: switch (Key) { case kRecord: - case kRed: if (!HasSubMenu()) + case kRed: if (!HadSubMenu) state = osRecord; break; - case kGreen: if (!HasSubMenu()) { + case kGreen: if (!HadSubMenu) { int CurrentAudioTrack = -1; const char **AudioTracks = cDevice::PrimaryDevice()->GetAudioTracks(&CurrentAudioTrack); if (AudioTracks) { @@ -2561,10 +2563,10 @@ eOSState cMenuMain::ProcessKey(eKeys Key) } } break; - case kYellow: if (!HasSubMenu()) + case kYellow: if (!HadSubMenu) state = osPause; break; - case kBlue: if (!HasSubMenu()) + case kBlue: if (!HadSubMenu) state = replaying ? osStopReplay : cReplayControl::LastReplayed() ? osReplay : osContinue; break; default: break;