commit:     83e671f0328effba5e7c807fef103b08a55dfd97
Author:     Martin Dummer <martin.dummer <AT> gmx <DOT> net>
AuthorDate: Sat Sep 27 21:25:26 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Oct  3 00:42:32 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=83e671f0

media-plugins/vdr-suspendoutput: add 2.1.0

fix usage of cControl::Control()
introduce subslot dependency on media-video/vdr

Closes: https://bugs.gentoo.org/831103
Closes: https://bugs.gentoo.org/963370
Signed-off-by: Martin Dummer <martin.dummer <AT> gmx.net>
Part-of: https://github.com/gentoo/gentoo/pull/43960
Closes: https://github.com/gentoo/gentoo/pull/43960
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-plugins/vdr-suspendoutput/Manifest           |  2 +-
 .../files/vdr-suspendoutput-2.1.0_gcc-fix.patch    | 57 ++++++++++++++++++++++
 .../vdr-suspendoutput-2.0.1-r1.ebuild              | 30 ------------
 .../vdr-suspendoutput-2.1.0.ebuild                 | 19 ++++++++
 4 files changed, 77 insertions(+), 31 deletions(-)

diff --git a/media-plugins/vdr-suspendoutput/Manifest 
b/media-plugins/vdr-suspendoutput/Manifest
index edc0b9efcba0..3ba9a899d6c9 100644
--- a/media-plugins/vdr-suspendoutput/Manifest
+++ b/media-plugins/vdr-suspendoutput/Manifest
@@ -1 +1 @@
-DIST vdr-suspendoutput-2.0.1.tgz 34753 BLAKE2B 
57fb244557ad0e6f54580fb4251799776b7f416b773c2e619c492ddbee68fd9b456045a88871fe22bab41b0f96833091645479db1438382bcf9949effb5c638f
 SHA512 
25f308d0d35bdff03aa9578f974e9c87ccc6113fa72bc8516383357c415c50e3f40c68bda8f073986efc2a85884446cbb2e10e32ed43e78c54c1413fd90aa13a
+DIST vdr-suspendoutput-2.1.0.tgz 35358 BLAKE2B 
32dbcb89d99c8cf97b0ef149e8a14898b87a3bea60db4e5a6dc7b04680969cddc955136d0dbdf12fc33c57ba9472925137801a674a39015a1b849b12fe9792b3
 SHA512 
d7ad36857b4ad6212f2d5ef2f098a80087ffa5d7b1c1b8642f7eb0cd55365e7a7e80bd2cd1967d7dc3a3d8c146d8aefa7907d6de96c05060e05ffb5a60844808

diff --git 
a/media-plugins/vdr-suspendoutput/files/vdr-suspendoutput-2.1.0_gcc-fix.patch 
b/media-plugins/vdr-suspendoutput/files/vdr-suspendoutput-2.1.0_gcc-fix.patch
new file mode 100644
index 000000000000..b3d66a75b7ef
--- /dev/null
+++ 
b/media-plugins/vdr-suspendoutput/files/vdr-suspendoutput-2.1.0_gcc-fix.patch
@@ -0,0 +1,57 @@
+diff '--color=auto' -Naur suspendoutput-2.1.0.orig/suspendoutput.c 
suspendoutput-2.1.0/suspendoutput.c
+--- suspendoutput-2.1.0.orig/suspendoutput.c   2016-12-31 21:26:54.000000000 
+0100
++++ suspendoutput-2.1.0/suspendoutput.c        2025-09-27 23:13:21.067926000 
+0200
+@@ -320,8 +320,9 @@
+      (!cDummyPlayerControl::IsOpen()) ) {
+     bool Play, Forward;
+     int Speed;
+-    if(cControl::Control() &&
+-       cControl::Control()->GetReplayMode(Play, Forward, Speed) &&
++    cMutexLock MutexLock;
++    if(cControl::Control(MutexLock) &&
++       cControl::Control(MutexLock)->GetReplayMode(Play, Forward, Speed) &&
+        Play)
+       Activity();
+   }
+diff '--color=auto' -Naur suspendoutput-2.1.0.orig/timer.c 
suspendoutput-2.1.0/timer.c
+--- suspendoutput-2.1.0.orig/timer.c   2016-06-08 21:15:54.000000000 +0200
++++ suspendoutput-2.1.0/timer.c        2025-09-27 23:08:01.032626387 +0200
+@@ -121,7 +121,7 @@
+       m_Lock.Lock();
+       while(m_Events.First()) {
+         m_Signal.TimedWait(m_Lock,
+-                           max(1, m_Events.First()->TimeToNextEvent()));
++                           std::max(1, m_Events.First()->TimeToNextEvent()));
+         TRACE("cTimerThread::Action waked up");
+         while(NULL != (m_RunningEvent = m_Events.First()) &&
+               m_RunningEvent->TimeToNextEvent() <= 0) {
+@@ -204,7 +204,7 @@
+         m_Instance->m_Lock.Lock();
+         m_Instance->m_Signal.Broadcast();
+       }
+-      m_Instance->Add(new cTimerThreadEvent(Handler, max(1U,TimeoutMs),
++      m_Instance->Add(new cTimerThreadEvent(Handler, std::max(1U,TimeoutMs),
+                                             DeleteOnCancel));
+       m_Instance->m_Lock.Unlock();
+       m_InstanceLock.Unlock();
+diff '--color=auto' -Naur suspendoutput-2.1.0.orig/timer.h 
suspendoutput-2.1.0/timer.h
+--- suspendoutput-2.1.0.orig/timer.h   2016-06-08 21:20:37.000000000 +0200
++++ suspendoutput-2.1.0/timer.h        2025-09-27 23:09:24.600443250 +0200
+@@ -243,7 +243,7 @@
+ 
+ template<class TCLASS>
+ cTimerEvent *CreateTimerEvent(TCLASS *c, void (TCLASS::*fp)(void),
+-                              unsigned int TimeoutMs, bool runOnce = true)
++                              unsigned int TimeoutMs, bool runOnce)
+ {
+   return new cTimerFunctor0<TCLASS>(c,fp,TimeoutMs,runOnce);
+ }
+@@ -251,7 +251,7 @@
+ template<class TCLASS, class TARG1>
+ cTimerEvent *CreateTimerEvent(TCLASS *c, void (TCLASS::*fp)(TARG1),
+                               TARG1 arg1,
+-                              unsigned int TimeoutMs, bool runOnce = true)
++                              unsigned int TimeoutMs, bool runOnce)
+ {
+   return new cTimerFunctor1<TCLASS,TARG1>(c,fp,arg1,TimeoutMs,runOnce);
+ }

diff --git a/media-plugins/vdr-suspendoutput/vdr-suspendoutput-2.0.1-r1.ebuild 
b/media-plugins/vdr-suspendoutput/vdr-suspendoutput-2.0.1-r1.ebuild
deleted file mode 100644
index 0497eb2de3a3..000000000000
--- a/media-plugins/vdr-suspendoutput/vdr-suspendoutput-2.0.1-r1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit vdr-plugin-2
-
-DESCRIPTION="VDR Plugin: Show still image instead of live tv to safe cpu"
-HOMEPAGE="http://phivdr.dyndns.org/vdr/vdr-suspendoutput/";
-SRC_URI="http://phivdr.dyndns.org/vdr/vdr-suspendoutput/${P}.tgz";
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-DEPEND="media-video/vdr"
-RDEPEND="${DEPEND}"
-
-src_prepare() {
-       vdr-plugin-2_src_prepare
-
-       # compile fix, wrt bug 574162
-       sed -e 246c"unsigned int TimeoutMs, bool runOnce)" \
-               -e 254c"unsigned int TimeoutMs, bool runOnce)" \
-               -i timer.h || die
-
-       # gcc-11, bug 787506
-       sed -e "s|max|std::max|" -i timer.c || die
-}

diff --git a/media-plugins/vdr-suspendoutput/vdr-suspendoutput-2.1.0.ebuild 
b/media-plugins/vdr-suspendoutput/vdr-suspendoutput-2.1.0.ebuild
new file mode 100644
index 000000000000..dedf80352ed6
--- /dev/null
+++ b/media-plugins/vdr-suspendoutput/vdr-suspendoutput-2.1.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit vdr-plugin-2
+
+DESCRIPTION="VDR Plugin: Show still image instead of live tv to save cpu"
+HOMEPAGE="https://phivdr.dyndns.org/vdr/vdr-suspendoutput/";
+SRC_URI="https://phivdr.dyndns.org/vdr/vdr-suspendoutput/${P}.tgz";
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="media-video/vdr:="
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}/${P}_gcc-fix.patch" )

Reply via email to