And here is the Patch at vdr-1.3.37 (an Include instruction was still necessary). ;-)
diff -Nur timeline-0.9.0-org/checkerOsd.c timeline-0.9.0/checkerOsd.c --- timeline-0.9.0-org/checkerOsd.c 2005-01-02 13:24:57.000000000 +0100 +++ timeline-0.9.0/checkerOsd.c 2005-12-12 17:49:54.000000000 +0100 @@ -228,7 +228,11 @@ { if (showDay<0 && ct1->IsSingleEvent()) { +#if VDRVERSNUM < 10323 showDay=ct1->Day(); +#else + showDay=cTimer::GetMDay(ct1->Day()); +#endif }
for(int i=0;i<MAXDEVICES;i++) @@ -271,7 +275,11 @@ localtime_r(&start1t,&day1); sprintf(line1,"%s %04d-%02d-%02d (%s):",tr("Conflict on"),day1.tm_year+1900,day1.tm_mon+1,day1.tm_mday,tr("same input device")); sprintf(line2,"%02d:%02d-%02d:%02d, (P%d) %s: %s",ct1->Start()/100,ct1->Start()%100,ct1->Stop()/100,ct1->Stop()%100,ct1->Priority(),ch1->Name(),ct1->File()); - sprintf(line3,"%02d:%02d-%02d:%02d (%s), (P%d) %s: %s",ct2->Start()/100,ct2->Start()%100,ct2->Stop()/100,ct2->Stop()%100,ct2->PrintDay(ct2->Day()),ct2->Priority(),ch2->Name(),ct2->File()); +#if VDRVERSNUM < 10323 + sprintf(line3,"%02d:%02d-%02d:%02d (%s), (P%d) %s: %s",ct2->Start()/100,ct2->Start()%100,ct2->Stop()/100,ct2->Stop()%100,(const char *)ct2->PrintDay(ct2->Day()),ct2->Priority(),ch2->Name(),ct2->File()); +#else + sprintf(line3,"%02d:%02d-%02d:%02d (%s), (P%d) %s: %s",ct2->Start()/100,ct2->Start()%100,ct2->Stop()/100,ct2->Stop()%100,(const char *)ct2->PrintDay(ct2->Day(),ct2->WeekDays()),ct2->Priority(),ch2->Name(),ct2->File()); +#endif } } else if (!ct1->IsSingleEvent() && ct2->IsSingleEvent()) @@ -301,7 +309,11 @@ { localtime_r(&start1t,&day1); sprintf(line1,"%s %04d-%02d-%02d (%s):",tr("Conflict on"),day1.tm_year+1900,day1.tm_mon+1,day1.tm_mday,tr("same input device")); - sprintf(line2,"%02d:%02d-%02d:%02d (%s), (P%d) %s: %s",ct1->Start()/100,ct1->Start()%100,ct1->Stop()/100,ct1->Stop()%100,ct1->PrintDay(ct1->Day()),ct1->Priority(),ch1->Name(),ct1->File()); +#if VDRVERSNUM < 10323 + sprintf(line2,"%02d:%02d-%02d:%02d (%s), (P%d) %s: %s",ct1->Start()/100,ct1->Start()%100,ct1->Stop()/100,ct1->Stop()%100,(const char *)ct1->PrintDay(ct1->Day()),ct1->Priority(),ch1->Name(),ct1->File()); +#else + sprintf(line2,"%02d:%02d-%02d:%02d (%s), (P%d) %s: %s",ct1->Start()/100,ct1->Start()%100,ct1->Stop()/100,ct1->Stop()%100,(const char *)ct1->PrintDay(ct1->Day(),ct1->WeekDays()),ct1->Priority(),ch1->Name(),ct1->File()); +#endif sprintf(line3,"%02d:%02d-%02d:%02d, (P%d) %s: %s",ct2->Start()/100,ct2->Start()%100,ct2->Stop()/100,ct2->Stop()%100,ct2->Priority(),ch2->Name(),ct2->File()); } } @@ -312,7 +324,11 @@ for(int i=0;i<6;i++) { hassubmatch=false; +#if VDRVERSNUM < 10323 if (ct1->Day() & (1<<i)) +#else + if (ct1->WeekDays() & (1<<i)) +#endif { int nn=(4+i)*SECSINDAY; // 4: first Sunday after Unix time 0 start1t=ct1->SetTime(nn,ct1->TimeToInt(ct1->Start())); @@ -338,9 +354,15 @@ } if (hasmatched) { - sprintf(line1,"%s %s (%s):",tr("Repeating conflict on"),ct1->PrintDay(mdays|0x80000000),tr("same input device")); - sprintf(line2,"%02d:%02d-%02d:%02d (%s), (P%d) %s: %s",ct1->Start()/100,ct1->Start()%100,ct1->Stop()/100,ct1->Stop()%100,ct1->PrintDay(ct1->Day()),ct1->Priority(),ch1->Name(),ct1->File()); - sprintf(line3,"%02d:%02d-%02d:%02d (%s), (P%d) %s: %s",ct2->Start()/100,ct2->Start()%100,ct2->Stop()/100,ct2->Stop()%100,ct2->PrintDay(ct2->Day()),ct2->Priority(),ch2->Name(),ct2->File()); +#if VDRVERSNUM < 10323 + sprintf(line1,"%s %s (%s):",tr("Repeating conflict on"),(const char *)ct1->PrintDay(mdays|0x80000000),tr("same input device")); + sprintf(line2,"%02d:%02d-%02d:%02d (%s), (P%d) %s: %s",ct1->Start()/100,ct1->Start()%100,ct1->Stop()/100,ct1->Stop()%100,(const char *)ct1->PrintDay(ct1->Day()),ct1->Priority(),ch1->Name(),ct1->File()); + sprintf(line3,"%02d:%02d-%02d:%02d (%s), (P%d) %s: %s",ct2->Start()/100,ct2->Start()%100,ct2->Stop()/100,ct2->Stop()%100,(const char *)ct2->PrintDay(ct2->Day()),ct2->Priority(),ch2->Name(),ct2->File()); +#else + sprintf(line1,"%s %s (%s):",tr("Repeating conflict on"),(const char *)ct1->PrintDay(0,mdays),tr("same input device")); + sprintf(line2,"%02d:%02d-%02d:%02d (%s), (P%d) %s: %s",ct1->Start()/100,ct1->Start()%100,ct1->Stop()/100,ct1->Stop()%100,(const char *)ct1->PrintDay(ct1->Day(),ct1->WeekDays()),ct1->Priority(),ch1->Name(),ct1->File()); + sprintf(line3,"%02d:%02d-%02d:%02d (%s), (P%d) %s: %s",ct2->Start()/100,ct2->Start()%100,ct2->Stop()/100,ct2->Stop()%100,(const char *)ct2->PrintDay(ct2->Day(),ct2->WeekDays()),ct2->Priority(),ch2->Name(),ct2->File()); +#endif } } else // ct1->IsSingleEvent() && ct2->IsSingleEvent() @@ -574,13 +596,21 @@ ct1=Timers.First(); while (ct1) { +#if VDRVERSNUM < 10323 int day1=ct1->Day(); +#else + int day1=cTimer::GetMDay(ct1->Day()); +#endif if (!ct1->IsSingleEvent()) { if (ct1->DayMatches(dayt)) { day1=day; } + else + { + day1=0; + } } int start1=ct1->Start(); int stop1=ct1->Stop(); diff -Nur timeline-0.9.0-org/checkerOsd.h timeline-0.9.0/checkerOsd.h --- timeline-0.9.0-org/checkerOsd.h 2004-11-30 21:12:54.000000000 +0100 +++ timeline-0.9.0/checkerOsd.h 2005-12-12 17:51:42.000000000 +0100 @@ -11,6 +11,7 @@ #define CHECKEROSD_H
#include <vdr/plugin.h> +#include <vdr/device.h> #include <time.h> #include "config.h"