Fixed a busy loop in fast forward if the next video data file is missing

This commit is contained in:
Klaus Schmidinger 2007-04-28 15:18:02 +02:00
parent 32c689258a
commit 27c7603276
3 changed files with 12 additions and 2 deletions

View File

@ -1120,6 +1120,7 @@ Reinhard Nissl <rnissl@gmx.de>
for making cCommand::Execute() use cPipe instead of popen() to avoid problems
with open file handles when starting background commands
for fixing handling error status in cDvbTuner::GetFrontendStatus()
for fixing a busy loop in fast forward if the next video data file is missing
Richard Robson <richard_robson@beeb.net>
for reporting freezing replay if a timer starts while in Transfer Mode from the

View File

@ -5166,6 +5166,13 @@ Video Disk Recorder Revision History
wrongly encoded, but apparently on the new transponder they started broadcasting
on this month, they got it right.
2007-04-28: Version 1.4.6-1
- Fixed a busy loop in fast forward if the next video data file is missing
(thanks to Reinhard Nissl).
2007-04-28: Version 1.5.3
- Fixed some spelling errors in 'newplugin' (thanks to Ville Skyttä).
- Fixed a busy loop in fast forward if the next video data file is missing
(thanks to Reinhard Nissl).

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: dvbplayer.c 1.45 2006/04/17 11:00:00 kls Exp $
* $Id: dvbplayer.c 1.46 2007/04/28 14:55:22 kls Exp $
*/
#include "dvbplayer.h"
@ -402,8 +402,10 @@ void cDvbPlayer::Action(void)
bool TimeShiftMode = index->IsStillRecording();
int Index = index->GetNextIFrame(readIndex, playDir == pdForward, &FileNumber, &FileOffset, &Length, TimeShiftMode);
if (Index >= 0) {
if (!NextFile(FileNumber, FileOffset))
if (!NextFile(FileNumber, FileOffset)) {
readIndex = Index;
continue;
}
}
else {
if (!TimeShiftMode && playDir == pdForward) {