[vdr-plugin-epgsync] 02/05: Added VDR 2.3.2 compatibility patch provided by Frank Neuman (Closes: #872486)

Tobias Grimm tiber-guest at moszumanska.debian.org
Sun Jan 28 15:58:21 UTC 2018


This is an automated email from the git hooks/post-receive script.

tiber-guest pushed a commit to branch master
in repository vdr-plugin-epgsync.

commit 66e63ecf5ed1b68bf29f1215223722896e6138b7
Author: Tobias Grimm <git at e-tobi.net>
Date:   Sun Jan 28 16:14:53 2018 +0100

    Added VDR 2.3.2 compatibility patch provided by Frank Neuman (Closes: #872486)
---
 debian/patches/series                          |  1 +
 debian/patches/vdr-2.3.2-epgsync-1.0.1_v2.diff | 67 ++++++++++++++++++++++++++
 2 files changed, 68 insertions(+)

diff --git a/debian/patches/series b/debian/patches/series
index aa22a93..ecbc431 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1 +1,2 @@
 01_include_path.patch
+vdr-2.3.2-epgsync-1.0.1_v2.diff
diff --git a/debian/patches/vdr-2.3.2-epgsync-1.0.1_v2.diff b/debian/patches/vdr-2.3.2-epgsync-1.0.1_v2.diff
new file mode 100644
index 0000000..33d5b9c
--- /dev/null
+++ b/debian/patches/vdr-2.3.2-epgsync-1.0.1_v2.diff
@@ -0,0 +1,67 @@
+Index: b/thread.c
+===================================================================
+--- a/thread.c
++++ b/thread.c
+@@ -42,9 +42,18 @@
+ 	}
+ }
+ 
++#if APIVERSNUM < 20301
+ cChannel *GetChannelByName(const char* Name, const cChannel *IgnoreChannel = NULL, eChannelTypes Type = ctAll)
++#else
++const cChannel *GetChannelByName(const char* Name, const cChannel *IgnoreChannel = NULL, eChannelTypes Type = ctAll)
++#endif
+ {
++#if APIVERSNUM < 20301
+ 	for (cChannel *channel = Channels.First(); channel; channel = Channels.Next(channel)) {
++#else
++	LOCK_CHANNELS_READ;
++	for (const cChannel *channel = Channels->First(); channel; channel = Channels->Next(channel)) {
++#endif
+ 		if (strcasecmp(Name, channel->Name()) == 0 || strcasecmp(Name, channel->ShortName()) == 0) {
+ 			if (IsType(channel, Type) && channel != IgnoreChannel)
+ 				return channel;
+@@ -95,6 +104,7 @@
+ 		if (EpgSyncSetup.redirectChannels == rcmId) {
+ 			// Direct import, no mapping:
+ 			// loop through local channels, get channels by ID
++#if APIVERSNUM < 20301
+ 			cSchedulesLock *lock = NULL;
+ 			for (cChannel *channel = Channels.First(); channel && Running();
+ 					channel = Channels.Next(channel)) {
+@@ -102,13 +112,22 @@
+ 					lock = new cSchedulesLock();
+ 				if (cSchedules::Schedules(*lock)->GetSchedule(channel)) {
+ 					DELETENULL(lock);
++#else
++			LOCK_CHANNELS_READ;
++			for (const cChannel *channel = Channels->First(); channel && Running();
++					channel = Channels->Next(channel)) {
++				LOCK_SCHEDULES_READ;
++				if (Schedules->GetSchedule(channel)) {
++#endif
+ 					if (CmdLSTE(f, *channel->GetChannelID().ToString())) {
+ 						AddSchedule(f);
+ 					}
+ 					cCondWait::SleepMs(EPGSYNC_SLEEPMS);
+ 				}
+ 			}
++#if APIVERSNUM < 20301
+ 			DELETENULL(lock);
++#endif
+ 		}
+ 		else {
+ 			// Map channels by name:
+@@ -182,7 +201,12 @@
+ 			targetChannel = NULL;
+ 
+ 			const char* p = skipspace(s + 1);
++#if APIVERSNUM < 20301
+ 			cChannel *c = Channels.GetByChannelID(tChannelID::FromString(p));
++#else
++			LOCK_CHANNELS_READ;
++			const cChannel *c = Channels->GetByChannelID(tChannelID::FromString(p));
++#endif
+ 			bool cOk = IsType(c, (eChannelTypes) EpgSyncSetup.channelTypes);
+ 
+ 			if (cOk && EpgSyncSetup.redirectChannels != rcmNameId) {

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-vdr-dvb/vdr-plugin-epgsync.git



More information about the pkg-vdr-dvb-changes mailing list