Actions
Feature #2247
closedvdr-2.3.1 support
Status:
Closed
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
10/04/2015
Due date:
% Done:
0%
Estimated time:
Updated by anbr almost 9 years ago
Für vdr-2.3.2 - Quelle : http://www.vdr-portal.de/board17-developer/board97-vdr-core/p1284413-produktive-problem-und-pluginl%C3%B6sungen-f%C3%BCr-vdr-2-3-2-und-h%C3%B6her/#post1284413
diff -ruN osdteletext-0.9.5.org/menu.c osdteletext-0.9.5/menu.c
--- osdteletext-0.9.5.org/menu.c 2012-04-04 22:04:06.000000000 +0200
+++ osdteletext-0.9.5/menu.c 2017-01-03 15:20:40.447608021 +0100
@@ -73,11 +73,13 @@
}
bool TeletextBrowser::CheckIsValidChannel(int number) {
- return (Channels.GetByNumber(number) != 0);
+ LOCK_CHANNELS_READ;
+ return (Channels->GetByNumber(number) != 0);
}
void TeletextBrowser::ChannelSwitched(int ChannelNumber) {
- cChannel *chan=Channels.GetByNumber(ChannelNumber);
+ LOCK_CHANNELS_READ;
+ const cChannel *chan=Channels->GetByNumber(ChannelNumber);
if (!chan)
return;
diff -ruN osdteletext-0.9.5.org/txtrecv.c osdteletext-0.9.5/txtrecv.c
--- osdteletext-0.9.5.org/txtrecv.c 2013-03-10 17:15:21.000000000 +0100
+++ osdteletext-0.9.5/txtrecv.c 2017-01-03 15:21:59.152432937 +0100
@@ -86,7 +86,8 @@
// ignore if channel is invalid (highly unlikely, this will ever
// be the case, but defensive coding rules!)
- cChannel* newLiveChannel = Channels.GetByNumber(ChannelNumber);
+ LOCK_CHANNELS_READ;
+ const cChannel* newLiveChannel = Channels->GetByNumber(ChannelNumber);
if (newLiveChannel == NULL) return;
// ignore non-live-channel-switching
@@ -147,7 +148,7 @@
}
}
-void cTxtReceiver::Receive(uchar *Data, int Length)
+void cTxtReceiver::Receive(const uchar *Data, int Length)
{
cFrame *frame=new cFrame(Data, Length);
if (!buffer.Put(frame)) {
diff -ruN osdteletext-0.9.5.org/txtrecv.h osdteletext-0.9.5/txtrecv.h
--- osdteletext-0.9.5.org/txtrecv.h 2013-03-10 17:15:21.000000000 +0100
+++ osdteletext-0.9.5/txtrecv.h 2017-01-03 15:18:48.095883152 +0100
@@ -56,7 +56,7 @@
Storage *storage;
protected:
virtual void Activate(bool On);
- virtual void Receive(uchar *Data, int Length);
+ virtual void Receive(const uchar *Data, int Length);
virtual void Action();
public:
cTxtReceiver(const cChannel* chan, bool storeTopText, Storage* storage);
Actions