From a05590796ad98d994eca1b24c69d164d05e34f60 Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Sun, 22 May 2005 11:29:19 +0200 Subject: [PATCH] Fixed a possible hangup when ending a replay session while cIndexFile::CatchUp() is waiting --- CONTRIBUTORS | 2 ++ HISTORY | 2 ++ dvbplayer.c | 4 ++-- recording.c | 4 ++-- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 29104fbc..a9e8ffaf 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -1176,6 +1176,8 @@ Marco Schl for adding cPlayer::DeviceSetVideoDisplayFormat() for making the setup not being saved in case of a fatal error, to keep the volume level from being set to a wrong value + for fixing a possible hangup when ending a replay session while cIndexFile::CatchUp() + is waiting Jürgen Schmitz for reporting a bug in displaying the current channel when switching via the SVDRP diff --git a/HISTORY b/HISTORY index d0b04d66..de44340d 100644 --- a/HISTORY +++ b/HISTORY @@ -3551,3 +3551,5 @@ Video Disk Recorder Revision History - Added cPlayer::DeviceSetVideoDisplayFormat() (thanks to Marco Schlüßler). - No longer saving the setup in case of a fatal error, to keep the volume level from being set to a wrong value (thanks to Marco Schlüßler). +- Fixed a possible hangup when ending a replay session while cIndexFile::CatchUp() + is waiting (thanks to Marco Schlüßler). diff --git a/dvbplayer.c b/dvbplayer.c index e774102e..2d4e1e48 100644 --- a/dvbplayer.c +++ b/dvbplayer.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: dvbplayer.c 1.33 2005/05/08 14:07:00 kls Exp $ + * $Id: dvbplayer.c 1.34 2005/05/22 11:26:51 kls Exp $ */ #include "dvbplayer.h" @@ -355,7 +355,7 @@ void cDvbPlayer::Activate(bool On) } else if (active) { running = false; - Cancel(3); + Cancel(9); active = false; } } diff --git a/recording.c b/recording.c index 347962bf..0e899a3d 100644 --- a/recording.c +++ b/recording.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: recording.c 1.102 2005/05/22 10:43:10 kls Exp $ + * $Id: recording.c 1.103 2005/05/22 11:27:28 kls Exp $ */ #include "recording.h" @@ -1043,7 +1043,7 @@ bool cIndexFile::CatchUp(int Index) LOG_ERROR_STR(fileName); if (Index < last - (i ? 2 * INDEXSAFETYLIMIT : 0) || Index > 10 * INDEXSAFETYLIMIT) // keep off the end in case of "Pause live video" break; - sleep(1); + cCondWait::SleepMs(1000); } } return index != NULL;