summaryrefslogtreecommitdiff
path: root/plugins/mlcd/patches/mlcd-0.0.4a.diff
blob: c1c5ff7c16274114f7050345af9823dbcd8d1c01 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
diff -Nur mlcd-0.0.4a/Makefile mlcd-0.0.4a-n/Makefile
--- mlcd-0.0.4a/Makefile	2004-04-25 12:49:19.000000000 +0200
+++ mlcd-0.0.4a-n/Makefile	2006-11-21 05:10:22.000000000 +0100
@@ -21,9 +21,13 @@
 LIBDIR = ../../lib
 TMPDIR = /tmp
 
+### Allow user defined options to overwrite defaults:
+
+-include $(VDRDIR)/Make.config
+
 ### The version number of VDR (taken from VDR's "config.h"):
 
-VDRVERSION = $(shell grep 'define VDRVERSION ' $(VDRDIR)/config.h | awk '{ print $$3 }' | sed -e 's/"//g')
+APIVERSION = $(shell grep 'define APIVERSION ' $(VDRDIR)/config.h | awk '{ print $$3 }' | sed -e 's/"//g')
 
 ### The name of the distribution archive:
 
@@ -43,7 +47,7 @@
 ### The C++ compiler and options:
 
 CXX      = g++
-CXXFLAGS = -O2 -Wall -Woverloaded-virtual
+CXXFLAGS = -fPIC -O2 -Wall -Woverloaded-virtual
 
 ### Implicit rules:
 
@@ -65,7 +69,7 @@
 
 libvdr-$(PLUGIN).so: $(OBJS)
 	$(CXX) $(CXXFLAGS) -shared $(OBJS) -o $@
-	@cp $@ $(LIBDIR)/$@.$(VDRVERSION)
+	@cp $@ $(LIBDIR)/$@.$(APIVERSION)
 
 dist: clean
 	@-rm -rf $(TMPDIR)/$(ARCHIVE)
diff -Nur mlcd-0.0.4a/mlcd.c mlcd-0.0.4a-n/mlcd.c
--- mlcd-0.0.4a/mlcd.c	2005-01-09 16:08:55.000000000 +0100
+++ mlcd-0.0.4a-n/mlcd.c	2006-11-21 04:57:40.000000000 +0100
@@ -22,8 +22,13 @@
   virtual void ChannelSwitch(const cDevice *Device, int ChannelNumber);
   virtual void SetVolume(int Volume, bool Absolute);
   //  virtual void OsdProgramme(time_t PresentTime, const char *PresentTitle, const char *PresentSubtitle, time_t FollowingTime, const char *FollowingTitle, const char *FollowingSubtitle);
+#if VDRVERSNUM >= 10338
+  virtual void Recording(const cDevice *Device, const char *Name, const char *FileName, bool On);
+  virtual void Replaying(const cControl *Control, const char *Name, const char *FileName, bool On);
+#else
   virtual void Recording(const cDevice *Device, const char *Name);
   virtual void Replaying(const cControl *Control, const char *Name);
+#endif
   };
 
 void clcdStatus::ChannelSwitch(const cDevice *Device, int ChannelNumber)
@@ -58,6 +63,17 @@
 }
 */
 
+#if VDRVERSNUM >= 10338
+void clcdStatus::Recording(const cDevice *Device, const char *Name, const char *FileName, bool On)
+{
+  LCD->SetRecordingState(Device->CardIndex(), On ? Name ? Name : "" : NULL);
+}
+
+void clcdStatus::Replaying(const cControl *Control, const char *Name, const char *FileName, bool On)
+{
+  LCD->ReplayControl((cControl *) Control, On ? Name ? Name : "" : NULL);
+}
+#else
 void clcdStatus::Recording(const cDevice *Device, const char *Name)
 {
   LCD->SetRecordingState(Device->CardIndex(), Name);
@@ -68,6 +84,7 @@
 
   LCD->ReplayControl((cControl *) Control,Name);
 }
+#endif
 
 class cPluginMlcd : public cPlugin {
 private:
diff -Nur mlcd-0.0.4a/multilcd.c mlcd-0.0.4a-n/multilcd.c
--- mlcd-0.0.4a/multilcd.c	2005-01-09 16:07:51.000000000 +0100
+++ mlcd-0.0.4a-n/multilcd.c	2006-11-21 04:57:40.000000000 +0100
@@ -10,6 +10,7 @@
 #include "multilcd.h"
 #include <vdr/tools.h>
 #include <vdr/config.h>
+#include <vdr/plugin.h>
 // #define M_DEBUG
 
 
@@ -154,16 +155,18 @@
   //Initialisierung des Arrays
   int i;
   int j;
+  char* path;
+  asprintf(&path, "%s/%s", cPlugin::ConfigDirectory("mlcd"), FONTFILE);
+
 #ifdef M_DEBUG
-  dsyslog(LOG_INFO,"Reading Font description from %s",FONTFILE);
+  dsyslog(LOG_INFO,"Reading Font description from %s", path);
 #endif
   for (i=0;i<256;i++)
     {
       for(j=0;j<6;j++) font[i][j] = 0;
     }
   //Oeffnen der Fontdatei
-  const char *name;
-  FILE *f=fopen(name=FONTFILE,"r");
+  FILE *f=fopen(path, "r");
  if(f){
    int n, i;
    char buffer[128];
@@ -181,6 +184,7 @@
  fclose(f);
  }
 
+ free(path);
  return 0;
 }
 
diff -Nur mlcd-0.0.4a/multilcd.h mlcd-0.0.4a-n/multilcd.h
--- mlcd-0.0.4a/multilcd.h	2004-05-22 10:02:17.000000000 +0200
+++ mlcd-0.0.4a-n/multilcd.h	2006-11-21 04:57:40.000000000 +0100
@@ -13,7 +13,7 @@
 #define TEXT 0xb3
 #define GRAPH 0xb4
 
-#define FONTFILE "/etc/char.dat"
+#define FONTFILE "char.dat"
 
 class mLCD : public cThread {
  private: