mirror of
				https://github.com/vdr-projects/vdr.git
				synced 2025-03-01 10:50:46 +00:00 
			
		
		
		
	Added more error messages and line numbers when reading EPG data and info.vdr
This commit is contained in:
		| @@ -920,6 +920,7 @@ Peter Bieringer <pb@bieringer.de> | ||||
|  for reporting a problem with duplicate recordings with the same file name | ||||
|  for suggesting to implement the command line option '--vfat' | ||||
|  for reporting a leftover 'summary.vdr' in vdr.5 | ||||
|  for adding more error messages and line numbers when reading EPG data and info.vdr | ||||
|  | ||||
| Alexander Damhuis <ad@phonedation.de> | ||||
|  for reporting problems when deleting a timer that is currently recording | ||||
|   | ||||
							
								
								
									
										2
									
								
								HISTORY
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								HISTORY
									
									
									
									
									
								
							| @@ -3899,3 +3899,5 @@ Video Disk Recorder Revision History | ||||
|   to Darren Salt). | ||||
| - Updated the Finnish OSD texts (thanks to Rolf Ahrenberg). | ||||
| - Fixed a leftover 'summary.vdr' in vdr.1 (reported by Christoph Hermanns). | ||||
| - Added more error messages and line numbers when reading EPG data and info.vdr | ||||
|   (thanks to Peter Bieringer). | ||||
|   | ||||
							
								
								
									
										8
									
								
								epg.c
									
									
									
									
									
								
							
							
						
						
									
										8
									
								
								epg.c
									
									
									
									
									
								
							| @@ -7,7 +7,7 @@ | ||||
|  * Original version (as used in VDR before 1.3.0) written by | ||||
|  * Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>. | ||||
|  * | ||||
|  * $Id: epg.c 1.37 2005/09/09 15:14:11 kls Exp $ | ||||
|  * $Id: epg.c 1.38 2005/10/09 12:57:55 kls Exp $ | ||||
|  */ | ||||
|  | ||||
| #include "epg.h" | ||||
| @@ -285,8 +285,10 @@ bool cEvent::Read(FILE *f, cSchedule *Schedule) | ||||
|   if (Schedule) { | ||||
|      cEvent *Event = NULL; | ||||
|      char *s; | ||||
|      int line = 0; | ||||
|      cReadLine ReadLine; | ||||
|      while ((s = ReadLine.Read(f)) != NULL) { | ||||
|            line++; | ||||
|            char *t = skipspace(s + 1); | ||||
|            switch (*s) { | ||||
|              case 'E': if (!Event) { | ||||
| @@ -316,8 +318,10 @@ bool cEvent::Read(FILE *f, cSchedule *Schedule) | ||||
|                        break; | ||||
|              case 'c': // to keep things simple we react on 'c' here | ||||
|                        return true; | ||||
|              default:  if (Event && !Event->Parse(s)) | ||||
|              default:  if (Event && !Event->Parse(s)) { | ||||
|                           esyslog("ERROR: EPG data problem in line %d", line); | ||||
|                           return false; | ||||
|                           } | ||||
|              } | ||||
|            } | ||||
|      esyslog("ERROR: unexpected end of file while reading EPG data"); | ||||
|   | ||||
							
								
								
									
										11
									
								
								recording.c
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								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.120 2005/10/01 10:29:02 kls Exp $ | ||||
|  * $Id: recording.c 1.121 2005/10/09 13:09:51 kls Exp $ | ||||
|  */ | ||||
|  | ||||
| #include "recording.h" | ||||
| @@ -264,7 +264,9 @@ bool cRecordingInfo::Read(FILE *f) | ||||
|   if (ownEvent) { | ||||
|      cReadLine ReadLine; | ||||
|      char *s; | ||||
|      int line = 0; | ||||
|      while ((s = ReadLine.Read(f)) != NULL) { | ||||
|            ++line; | ||||
|            char *t = skipspace(s + 1); | ||||
|            switch (*s) { | ||||
|              case 'C': { | ||||
| @@ -275,8 +277,10 @@ bool cRecordingInfo::Read(FILE *f) | ||||
|                             channelID = tChannelID::FromString(t); | ||||
|                        } | ||||
|                        break; | ||||
|              default: if (!ownEvent->Parse(s)) | ||||
|              default: if (!ownEvent->Parse(s)) { | ||||
|                          esyslog("ERROR: EPG data problem in line %d", line); | ||||
|                          return false; | ||||
|                          } | ||||
|                       break; | ||||
|              } | ||||
|            } | ||||
| @@ -478,7 +482,8 @@ cRecording::cRecording(const char *FileName) | ||||
|      asprintf(&InfoFileName, "%s%s", fileName, INFOFILESUFFIX); | ||||
|      FILE *f = fopen(InfoFileName, "r"); | ||||
|      if (f) { | ||||
|         info->Read(f); | ||||
|         if (!info->Read(f)) | ||||
|            esyslog("ERROR: EPG data problem in file %s", InfoFileName); | ||||
|         fclose(f); | ||||
|         } | ||||
|      else if (errno != ENOENT) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user