diff options
Diffstat (limited to 'patches/vdr-2.3.2-aux.patch')
-rw-r--r-- | patches/vdr-2.3.2-aux.patch | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/patches/vdr-2.3.2-aux.patch b/patches/vdr-2.3.2-aux.patch new file mode 100644 index 0000000..fd3fe26 --- /dev/null +++ b/patches/vdr-2.3.2-aux.patch @@ -0,0 +1,79 @@ +--- ../vdr-2.3.2.plain//epg.c 2015-09-10 12:58:19.000000000 +0200 ++++ epg.c 2017-03-22 11:44:51.917258845 +0100 +@@ -124,6 +124,7 @@ + shortText = NULL; + description = NULL; + components = NULL; ++ aux = NULL; + memset(contents, 0, sizeof(contents)); + parentalRating = 0; + startTime = 0; +@@ -137,6 +138,7 @@ + free(title); + free(shortText); + free(description); ++ free(aux); + delete components; + } + +@@ -237,6 +239,12 @@ + seen = time(NULL); + } + ++void cEvent::SetAux(const char *Aux) ++{ ++ free(aux); ++ aux = Aux ? strdup(Aux) : NULL; ++} ++ + cString cEvent::ToDescr(void) const + { + char vpsbuf[64] = ""; +@@ -469,6 +477,11 @@ + } + if (vps) + fprintf(f, "%sV %ld\n", Prefix, vps); ++ if (!isempty(aux)) { ++ strreplace(aux, '\n', '|'); ++ fprintf(f, "%s@ %s\n", Prefix, aux); ++ strreplace(aux, '|', '\n'); ++ } + if (!InfoOnly) + fprintf(f, "%se\n", Prefix); + } +@@ -507,6 +520,9 @@ + break; + case 'V': SetVps(atoi(t)); + break; ++ case '@': strreplace(t, '|', '\n'); ++ SetAux(t); ++ break; + default: esyslog("ERROR: unexpected tag while reading EPG data: %s", s); + return false; + } +--- ../vdr-2.3.2.plain//epg.h 2015-08-09 13:25:04.000000000 +0200 ++++ epg.h 2017-03-22 11:33:19.319728545 +0100 +@@ -89,6 +89,7 @@ + int duration; // Duration of this event in seconds + time_t vps; // Video Programming Service timestamp (VPS, aka "Programme Identification Label", PIL) + time_t seen; // When this event was last seen in the data stream ++ char *aux; + public: + cEvent(tEventID EventID); + ~cEvent(); +@@ -111,6 +112,7 @@ + time_t Vps(void) const { return vps; } + time_t Seen(void) const { return seen; } + bool SeenWithin(int Seconds) const { return time(NULL) - seen < Seconds; } ++ const char *Aux(void) const { return aux; } + void IncNumTimers(void) const; + void DecNumTimers(void) const; + bool HasTimer(void) const { return numTimers > 0; } +@@ -135,6 +137,7 @@ + void SetDuration(int Duration); + void SetVps(time_t Vps); + void SetSeen(void); ++ void SetAux(const char *Aux); + cString ToDescr(void) const; + void Dump(FILE *f, const char *Prefix = "", bool InfoOnly = false) const; + bool Parse(char *s); |