summaryrefslogtreecommitdiff
path: root/media-plugins/vdr-devstatus
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-12-15 18:09:03 +0000
committerV3n3RiX <venerix@redcorelinux.org>2019-12-15 18:09:03 +0000
commit7bc9c63c9da678a7e6fceb095d56c634afd22c56 (patch)
tree4a67d50a439e9af63947e5f8b6ba3719af98b6c9 /media-plugins/vdr-devstatus
parentb284a3168fa91a038925d2ecf5e4791011ea5e7d (diff)
gentoo resync : 15.12.2019
Diffstat (limited to 'media-plugins/vdr-devstatus')
-rw-r--r--media-plugins/vdr-devstatus/Manifest8
-rw-r--r--media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-channelswitch.patch20
-rw-r--r--media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-dvb-adapter-frontend.patch22
-rw-r--r--media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-memoryleak.patch74
-rw-r--r--media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-recordingfound.patch17
-rw-r--r--media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-vdr2.3.patch99
-rw-r--r--media-plugins/vdr-devstatus/metadata.xml18
-rw-r--r--media-plugins/vdr-devstatus/vdr-devstatus-0.4.1-r1.ebuild36
8 files changed, 288 insertions, 6 deletions
diff --git a/media-plugins/vdr-devstatus/Manifest b/media-plugins/vdr-devstatus/Manifest
index e04ef1602444..21331cec7a4e 100644
--- a/media-plugins/vdr-devstatus/Manifest
+++ b/media-plugins/vdr-devstatus/Manifest
@@ -1,3 +1,9 @@
+AUX vdr-devstatus-0.4.1-channelswitch.patch 615 BLAKE2B f12f4eaf360544590b3121b5bd4a3154bf4fb26bfc1f64372dfdf744651cadac8d474aec4e1eaa611c745f48e59b664b239572fa08bad2ae4677c9197635afb2 SHA512 ba667a7931151a71303fcef5c5e6b342e5f355789ea09d4df4c5caf57778752d557b4e165d0f2472573f80376165018bfe47a3edb0ee811b5cf576e2c9a7d14a
+AUX vdr-devstatus-0.4.1-dvb-adapter-frontend.patch 725 BLAKE2B 1f8780bd78aebd443c602d2676a0e0371a905257444336ec5a3ca48753d85b110f3f5bfc190a60fe7d0e9070e28b2c06c912580e883196126703d3686d992835 SHA512 8c7928ee982846cd9625d24cb2819cd6f79e98d817a48e7740fa5a6612ecbbec140d1aad9a59f0ed98d0651578bef7e919b12536acbd6bb0d2bea9c7cbc68f2a
+AUX vdr-devstatus-0.4.1-memoryleak.patch 3197 BLAKE2B 90ae608c71ba898d3a0c7391935a55e3b40d1bb9f8cffae77e2bbcfa2ce3c8b67b83f7a73f5dc387fa38b4de2b5f0eb390718cada6c95e11d2688e418d2f8425 SHA512 fa3c03007e326145c0dc2aaec095c0dff0033373e66c13051085bdf2a4a83c880ad4b2fe0050de6be5f64babcea717e419700b8e93b2034d9d3d08abfb65edf0
+AUX vdr-devstatus-0.4.1-recordingfound.patch 648 BLAKE2B b284f4426003366d57bca26076082c39bf97bda91dc2cbd34a057fce2c9845833e738424b9b7881f8574641ade30e4c0dc20311ff138e201f89a079d72382d39 SHA512 6f72f5a59319c5439573001a21a4e0d4fc9b471de68b21774babda11c1805589de009778b610ebf9665d808f7da9b04262c8f1d4b0b3902e02688efcb2e94f25
+AUX vdr-devstatus-0.4.1-vdr2.3.patch 4093 BLAKE2B fbd482e58f90e6875d2305268c005964a5b6bae9e56503d6a68d68462eb7f24c85ca7baf0e7071f4370192ec6eb2bd53eb2b3d92c5b27da578aaf621e4686298 SHA512 733840fee27c3c1a920815d547a9ffb30c76b02801ed000de917ac914879d8b3fc6093d356846c988dec8c9649411662fdaec6af1de9f578838b77e5b404b60b
DIST vdr-devstatus-0.4.1.tgz 22469 BLAKE2B 36e60b2d754209f5a2e30ff62114575565d9e0acf21e269797b39e9e487831288a7fcf0c12b32d2ed40f4c626ce6f6514169a767035d704a84c33ead25eb65c0 SHA512 4dde8cce6b4aaa6e0ce22b2cd5ad718ab04e7e5967a3cb2c05ac64946115b6291d395e36dff38d479e5a7d5c3c296feb4df7f8dce509c15ac0d8cafa179b7177
+EBUILD vdr-devstatus-0.4.1-r1.ebuild 925 BLAKE2B 6eefb4f3b40ab4eed5193b2a2f1ec6de1bbbf21d627c089bf524e8c4e6bf408067e46d92be148b3fcb4b221989054334dd6728c6ef63033e94a1d13f2311c7db SHA512 ada84f013d2d0cc71e37398dea9c10bfb33ba7c9cdf2ff86ef345afc22d0b3163bab4b5be2b5661e0aaf5a3af81c40f32f27fe039594adcead341b2bd3766034
EBUILD vdr-devstatus-0.4.1.ebuild 728 BLAKE2B 1206f5b50d1fbff6ced647353e1d93c2ac50e1fe9ed86e42b1a5b0e5dc908f79839769027fb4816ca577768652b64f59d72fbc1a6046c6ba1d77ee2a475ba5a6 SHA512 3de2a61dfd0bd8813373f4fe0230a8827700eeab60e5b9bcfba6f6b00d11cada5b87ae8592e9ac1c6f84fde3f155c9ba72fbeefbac0ab154e849d7f9569155aa
-MISC metadata.xml 255 BLAKE2B 62a6eb83a2d389a72a813ba8a0f41d77447b32e302a2c9540469a76b76cb1dd9b5166aec3f46f2ac72c9491ce4758b850328f07eab44beceac621f672822fb9c SHA512 25c24a1d1548c9bc74c9d391ff42b076acccbf9c4240e9778f7fb24fe12176b06d8292604698b4d2289d4906c7b658764b2b4fb5298f6815bd2dfe9ceec043d8
+MISC metadata.xml 490 BLAKE2B 3d67b2f4a08b03617814ff8bcc5329013574024173a6e342c2830c9fac0a7fb41f4177df14624bd806a2bd199271633d17f0ba4f92060280f9dff4b127514bf1 SHA512 d43c7f27ded08e8079867eba9311fa817b7afc7106774a4eec245128058117b5d10a781ab74654083b04032407c986b5f50fa92f279a5328ad10b87d1aca5b59
diff --git a/media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-channelswitch.patch b/media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-channelswitch.patch
new file mode 100644
index 000000000000..fbba371b05ee
--- /dev/null
+++ b/media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-channelswitch.patch
@@ -0,0 +1,20 @@
+--- a/devstatus.c
++++ b/devstatus.c
+@@ -122,7 +122,7 @@
+ #else
+ virtual void Recording(const cDevice *Device, const char *Name);
+ #endif
+- virtual void ChannelSwitch(const cDevice *Device, int ChannelNumber);
++ virtual void ChannelSwitch(const cDevice *Device, int ChannelNumber, bool LiveView);
+ };
+
+ cList<cRecObj> CurrentRecordings;
+@@ -660,7 +660,7 @@
+ }
+ }
+
+-void cDevStatusMonitor::ChannelSwitch(const cDevice *Device, int ChannelNumber) {
++void cDevStatusMonitor::ChannelSwitch(const cDevice *Device, int ChannelNumber, bool LiveView) {
+ if (!ChannelNumber) return;
+ update=1;
+ }
diff --git a/media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-dvb-adapter-frontend.patch b/media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-dvb-adapter-frontend.patch
new file mode 100644
index 000000000000..05572a29b710
--- /dev/null
+++ b/media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-dvb-adapter-frontend.patch
@@ -0,0 +1,22 @@
+--- a/devstatus.c
++++ b/devstatus.c
+@@ -161,6 +161,10 @@
+ private:
+ public:
+ void deviceinfoAsString(cDevice *d) {
++ cDvbDevice *dvb = dynamic_cast<cDvbDevice *>(d);
++ if (dvb == NULL)
++ return;
++
+ struct dvb_frontend_info m_FrontendInfo;
+ int m_Frontend;
+ // fe_status_t status;
+@@ -170,7 +174,7 @@
+ char* output = NULL;
+
+ #define FRONTEND_DEVICE "/dev/dvb/adapter%d/frontend%d"
+- cString dev = cString::sprintf(FRONTEND_DEVICE, d->CardIndex(), 0);
++ cString dev = cString::sprintf(FRONTEND_DEVICE, dvb->Adapter(), dvb->Frontend());
+ m_Frontend = open(dev, O_RDONLY | O_NONBLOCK);
+ if (m_Frontend < 0) {
+ return;
diff --git a/media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-memoryleak.patch b/media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-memoryleak.patch
new file mode 100644
index 000000000000..86977aa9584e
--- /dev/null
+++ b/media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-memoryleak.patch
@@ -0,0 +1,74 @@
+--- a/devstatus.c
++++ b/devstatus.c
+@@ -561,8 +561,8 @@
+ cString cPluginDevstatus::SVDRPCommand(const char *Command, const char *Option, int &ReplyCode) {
+ // Process SVDRP commands this plugin implements
+ if(strcasecmp(Command, "DEVSTAT") == 0) {
+- char* output = NULL;
+- asprintf(&output, "%s:\n", tr("List of DVB devices"));
++ cString output;
++ output = cString::sprintf("%s:\n", tr("List of DVB devices"));
+ for (int i = 0; i < cDevice::NumDevices(); i++) {
+ cDevice *d = cDevice::GetDevice(i);
+ char* devName = NULL;
+@@ -570,7 +570,7 @@
+ if (d->HasDecoder() || d->IsPrimaryDevice())
+ asprintf(&devInfo, " (%s%s%s)", d->HasDecoder() ? tr("device with decoder") : "", (d->HasDecoder() && d->IsPrimaryDevice()) ? ", " : "", d->IsPrimaryDevice() ? tr("primary device") : "");
+ asprintf(&devName, "--- %s %d%s ---", tr("Device"), i+1, devInfo ? devInfo : "");
+- asprintf(&output, "%s %s:\n", output , devName); // add device output and there info's
++ output = cString::sprintf("%s %s:\n", *output , devName); // add device output and there info's
+ free(devName);
+ if (devInfo)
+ free(devInfo);
+@@ -582,30 +582,29 @@
+ Name = strdup(r->name);
+ char* itemText = NULL;
+ asprintf(&itemText, "%s %s", DAYDATETIME(r->timer->StartTime()), Name);
+- asprintf(&output, "%s %s\n", output , itemText);
++ output = cString::sprintf("%s %s\n", *output , itemText);
+ free(itemText);
+ }
+ Count++;
+ }
+ }
+ if (Count == 0)
+- asprintf(&output, "%s %s\n", output, tr("currently no recordings"));
++ output = cString::sprintf("%s %s\n", *output, tr("currently no recordings"));
+ if (i < cDevice::NumDevices())
+- asprintf(&output, "%s\n", output);
++ output = cString::sprintf("%s\n", *output);
+ }
+ // we use the default reply code here
+- // return cString::sprintf("%s", output);
+ return output;
+ }
+
+ if(strcasecmp(Command, "RECNUMBER") == 0) {
+- char* output = NULL;
+- asprintf(&output, "%s:\n", tr("Number of concurrent recordings"));
++ cString output;
++ output = cString::sprintf("%s:\n", tr("Number of concurrent recordings"));
+ for (int i = 0; i < cDevice::NumDevices(); i++) {
+ cDevice *d = cDevice::GetDevice(i);
+ char* devName = NULL;
+ asprintf(&devName, "%s %d", tr("Device"), i+1);
+- asprintf(&output, "%s %s:", output , devName); // add device output and there info's
++ output = cString::sprintf("%s %s:", *output , devName); // add device output and there info's
+ free(devName);
+ int Count = 0;
+ for (cRecObj *r = CurrentRecordings.First(); r; r = CurrentRecordings.Next(r)){ // add recordings to the output
+@@ -613,12 +612,11 @@
+ Count++;
+ }
+ }
+- asprintf(&output, "%s %i\n", output, Count);
++ output = cString::sprintf("%s %i\n", *output, Count);
+ if (i < cDevice::NumDevices())
+- asprintf(&output, "%s\n", output);
++ output = cString::sprintf("%s\n", *output);
+ }
+ // we use the default reply code here
+- // return cString::sprintf("%s", output);
+ return output;
+ }
+
diff --git a/media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-recordingfound.patch b/media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-recordingfound.patch
new file mode 100644
index 000000000000..984210481dc6
--- /dev/null
+++ b/media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-recordingfound.patch
@@ -0,0 +1,17 @@
+Index: b/devstatus.c
+===================================================================
+--- a/devstatus.c
++++ b/devstatus.c
+@@ -351,7 +351,11 @@
+ recordingFound = recording;
+ if (!recordingFound)
+ return osContinue;
+- cReplayControl::SetRecording(recordingFound->FileName(), recordingFound->Title());
++ #if VDRVERSNUM < 10728
++ cReplayControl::SetRecording(recordingFound->FileName(), recordingFound->Title());
++ #else
++ cReplayControl::SetRecording(recordingFound->FileName());
++ #endif
+ return osReplay;
+ }
+
diff --git a/media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-vdr2.3.patch b/media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-vdr2.3.patch
new file mode 100644
index 000000000000..88c0a095c950
--- /dev/null
+++ b/media-plugins/vdr-devstatus/files/vdr-devstatus-0.4.1-vdr2.3.patch
@@ -0,0 +1,99 @@
+--- a/devstatus.c
++++ b/devstatus.c
+@@ -55,8 +55,14 @@
+ int channelNo;
+ cChannel *channel = NULL;
+
++#if VDRVERSNUM < 20300
+ for (channelNo = 1; channelNo <= Channels.MaxNumber(); channelNo++) {
+ if( (channel = Channels.GetByNumber(channelNo)) ) {
++#else
++ LOCK_CHANNELS_READ;
++ for (channelNo = 1; channelNo <= Channels->MaxNumber(); channelNo++) {
++ if( (channel = (cChannel*) Channels->GetByNumber(channelNo)) ) {
++#endif
+ if (d->IsTunedToTransponder(channel)) {
+ return channel;
+ }
+@@ -78,8 +84,14 @@
+ cChannel *resChannel = NULL;
+ int oldQRG = getTunedFrequency(device);
+
++#if VDRVERSNUM < 20300
+ for (channelNo = 1; channelNo <= Channels.MaxNumber(); channelNo++) {
+ if( (channel = Channels.GetByNumber(channelNo)) ) {
++#else
++ LOCK_CHANNELS_READ;
++ for (channelNo = 1; channelNo <= Channels->MaxNumber(); channelNo++) {
++ if( (channel = (cChannel*) Channels->GetByNumber(channelNo)) ) {
++#endif
+ if( device->ProvidesSource( channel->Source() ) ) { // same source (DVB-T, -S, ...)
+ if( !ISTRANSPONDER(channel->Frequency(),oldQRG) ) { //not the same transponder
+ if( channel->Frequency()*direction > oldQRG*direction ) {
+@@ -152,7 +164,11 @@
+ int GetChannelNr() { return ChannelNr; }
+ bool IsChannel() { return ChannelNr != 0; }
+ bool HasDevice() { return DeviceNr >= 0; }
++#if VDRVERSNUM < 20300
+ cChannel* GetChannel() { return Channels.GetByNumber(ChannelNr); }
++#else
++ cChannel* GetChannel() { LOCK_CHANNELS_READ; return (cChannel*) Channels->GetByNumber(ChannelNr); }
++#endif
+ cDevice* GetDevice() { return cDevice::GetDevice(DeviceNr); };
+ };
+
+@@ -279,8 +295,15 @@
+ int channelNo;
+ cChannel *channel = NULL;
+
++#if VDRVERSNUM < 20300
+ for (channelNo = 1; channelNo <= Channels.MaxNumber(); channelNo++) {
+ if( (channel = Channels.GetByNumber(channelNo)) ) {
++#else
++ LOCK_CHANNELS_READ;
++ for (channelNo = 1; channelNo <= Channels->MaxNumber(); channelNo++) {
++ if( (channel = (cChannel*) Channels->GetByNumber(channelNo)) ) {
++
++#endif
+ if (d->IsTunedToTransponder(channel)) {
+ bool currentLive = channelNo == d->CurrentChannel()
+ && (i == cDevice::ActualDevice()->CardIndex());
+@@ -350,7 +373,12 @@
+ eOSState Play(char* file) {
+ // Play the selected recording
+ cRecording* recordingFound = NULL;
++#if VDRVERSNUM < 20300
+ for(cRecording* recording = Recordings.First(); recording; recording = Recordings.Next(recording))
++#else
++ LOCK_RECORDINGS_READ;
++ for(cRecording* recording = (cRecording*) Recordings->First(); recording; recording = (cRecording*) Recordings->Next(recording))
++#endif
+ if (strstr(recording->Title(), file))
+ recordingFound = recording;
+ if (!recordingFound)
+@@ -405,7 +433,12 @@
+ ri = (cMenuRecItem*)Get(Current());
+ if (ri->Selectable()) {
+ if (ri->IsChannel()) {
++#if VDRVERSNUM < 20300
+ Channels.SwitchTo(ri->GetChannelNr());
++#else
++ LOCK_CHANNELS_READ;
++ Channels->SwitchTo(ri->GetChannelNr());
++#endif
+ Write(); //repaint; maybe 'Live' has changed
+ return osContinue;
+ } else
+@@ -635,7 +668,12 @@
+ #endif
+ if (Name) {
+ // insert new timers currently recording in TimersRecording
++#if VDRVERSNUM < 20300
+ for (cTimer *ti = Timers.First(); ti; ti = Timers.Next(ti))
++#else
++ LOCK_TIMERS_READ;
++ for (cTimer *ti = (cTimer*) Timers->First(); ti; ti = (cTimer*) Timers->Next(ti))
++#endif
+ if (ti->Recording()) {
+ // check if this is a new entry
+ bool bFound = false;
diff --git a/media-plugins/vdr-devstatus/metadata.xml b/media-plugins/vdr-devstatus/metadata.xml
index d83af69d923f..b97ab2647da7 100644
--- a/media-plugins/vdr-devstatus/metadata.xml
+++ b/media-plugins/vdr-devstatus/metadata.xml
@@ -1,8 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>vdr@gentoo.org</email>
- <name>Gentoo VDR Project</name>
- </maintainer>
+ <pkgmetadata>
+ <maintainer type="person">
+ <email>martin.dummer@gmx.net</email>
+ <name>Martin Dummer</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>vdr@gentoo.org</email>
+ <name>Gentoo VDR Project</name>
+ </maintainer>
</pkgmetadata>
diff --git a/media-plugins/vdr-devstatus/vdr-devstatus-0.4.1-r1.ebuild b/media-plugins/vdr-devstatus/vdr-devstatus-0.4.1-r1.ebuild
new file mode 100644
index 000000000000..a51ba83b6f6a
--- /dev/null
+++ b/media-plugins/vdr-devstatus/vdr-devstatus-0.4.1-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit vdr-plugin-2
+
+DESCRIPTION="VDR plugin: display the usage status of the available DVB devices"
+HOMEPAGE="http://www.u32.de/vdr.html"
+SRC_URI="http://www.u32.de/download/${P}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="media-video/vdr"
+RDEPEND="${DEPEND}"
+
+QA_FLAGS_IGNORED="
+ usr/lib/vdr/plugins/libvdr-.*
+ usr/lib64/vdr/plugins/libvdr-.*"
+PATCHES=(
+ "${FILESDIR}/${P}-recordingfound.patch"
+ "${FILESDIR}/${P}-channelswitch.patch"
+ "${FILESDIR}/${P}-dvb-adapter-frontend.patch"
+ "${FILESDIR}/${P}-memoryleak.patch"
+ "${FILESDIR}/${P}-vdr2.3.patch"
+)
+
+src_prepare() {
+ # remove untranslated .po files
+ rm "${S}"/po/{ca_ES,cs_CZ,da_DK,el_GR,et_EE,hr_HR,hu_HU,nl_NL,nn_NO,pl_PL,pt_PT,ro_RO,sl_SI,sv_SE,tr_TR}.po \
+ || die "failed to remove untranslated .po files"
+
+ vdr-plugin-2_src_prepare
+}