From ebd63f9a42ebf2024f326ff506c009d13446bca5 Mon Sep 17 00:00:00 2001 From: kamel5 Date: Fri, 5 Jul 2019 16:03:25 +0200 Subject: Correct an error with the recording sign in grid --- epgelement.c | 14 ++++++++++---- recmanager.c | 12 ++++++++++-- 2 files changed, 20 insertions(+), 6 deletions(-) diff --git a/epgelement.c b/epgelement.c index 2e1d077..8990d60 100644 --- a/epgelement.c +++ b/epgelement.c @@ -15,17 +15,23 @@ cEpgElement::~cEpgElement(void) { } void cEpgElement::SetTimer() { + hasTimer = false; if (config.useRemoteTimers && pRemoteTimers) { RemoteTimers_Event_v1_0 rt; rt.event = event; if (pRemoteTimers->Service("RemoteTimers::GetTimerByEvent-v1.0", &rt)) hasTimer = true; - else - hasTimer = false; +#if VDRVERSNUM >= 20301 + } else { + eTimerMatch TimerMatch = tmNone; + LOCK_TIMERS_READ; + const cTimers *timers = Timers; + if (timers->GetMatch(event, &TimerMatch) && (TimerMatch == tmFull)) + hasTimer = true; +#else } else if (owner->HasTimer()) { hasTimer = event->HasTimer(); - } else { - hasTimer = false; +#endif } } diff --git a/recmanager.c b/recmanager.c index c470073..092f942 100644 --- a/recmanager.c +++ b/recmanager.c @@ -46,9 +46,17 @@ bool cRecManager::CheckEventForTimer(const cEvent *event) { pRemoteTimers->Service("RemoteTimers::GetMatch-v1.0", &rtMatch); if (rtMatch.timerMatch == tmFull) hasTimer = true; - } else + } else { +#if VDRVERSNUM >= 20301 + eTimerMatch TimerMatch = tmNone; + LOCK_TIMERS_READ; + const cTimers *timers = Timers; + if (timers->GetMatch(event, &TimerMatch) && (TimerMatch == tmFull)) + hasTimer = true; +#else hasTimer = event->HasTimer(); - +#endif + } return hasTimer; } -- cgit v1.2.3