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@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@gentoo.org>
This commit is contained in:
Martin Dummer 2025-09-27 23:25:26 +02:00 committed by Sam James
parent 7426807285
commit 83e671f032
No known key found for this signature in database
GPG Key ID: 738409F520DF9190
4 changed files with 77 additions and 31 deletions

View File

@ -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

View File

@ -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);
}

View File

@ -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
}

View File

@ -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" )