[vdr] Patch for timeline-0.9.0 (vdr-1.3.37)

Thomas Rausch Thomas.Rausch at gmx.de
Mon Dec 12 19:10:32 CET 2005


And here is the Patch at vdr-1.3.37 (an Include instruction was still 
necessary). ;-)
-------------- next part --------------
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"
 


More information about the vdr mailing list