diff --git a/HISTORY b/HISTORY index ee6cf6ce..d2d6d712 100644 --- a/HISTORY +++ b/HISTORY @@ -7546,3 +7546,4 @@ Video Disk Recorder Revision History - Fixed a leftover line in case a two line subtitle was followed by a one line subtitle on the dvbhddevice in "high level" OSD mode. - Returning 0 from cDvbSdFfDevice::NumProvidedSystems() if option --outputonly is given. +- The index file is now closed after initially reading it if it is older than 3600 seconds. diff --git a/recording.c b/recording.c index 9cd05223..c2803255 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 2.83 2013/01/16 14:17:44 kls Exp $ + * $Id: recording.c 2.84 2013/01/25 14:31:04 kls Exp $ */ #include "recording.h" @@ -1743,12 +1743,14 @@ cIndexFile::cIndexFile(const char *FileName, bool Record, bool IsPesRecording, b esyslog("ERROR: can't read from file '%s'", *fileName); free(index); index = NULL; + } + else if (isPesRecording) + ConvertFromPes(index, size); + if (!index || time(NULL) - buf.st_mtime >= MININDEXAGE) { close(f); f = -1; } - // we don't close f here, see CatchUp()! - else if (isPesRecording) - ConvertFromPes(index, size); + // otherwise we don't close f here, see CatchUp()! } else LOG_ERROR_STR(*fileName);