From 5e9bd5cf83b8a7312e3c6543f757bf723e342e8e Mon Sep 17 00:00:00 2001 From: Jasmin Jessich Date: Fri, 9 Jun 2017 23:36:48 +0200 Subject: Update internal timer list if VDR timers have been changed - New function StatusMonitor::TimerChange. - New function TimerManager::SetReloadTimers. - VDR will execute TimerChange which will use SetReloadTimers to store a timer update needs to be done. Later TimerManager::DoPendingWork will reload the actual timers from VDR. - Added missing locking to StatusMonitor functions. --- status.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'status.cpp') diff --git a/status.cpp b/status.cpp index 47b451e..a39782c 100644 --- a/status.cpp +++ b/status.cpp @@ -8,9 +8,16 @@ namespace vdrlive { StatusMonitor::StatusMonitor() { } - + +void StatusMonitor::TimerChange(const cTimer *Timer, eTimerChange Change) +{ + cMutexLock timersLock( &LiveTimerManager() ); + LiveTimerManager().SetReloadTimers(); +} + void StatusMonitor::Recording( cDevice const*, char const*, char const*, bool ) { + cMutexLock timersLock( &LiveTimerManager() ); LiveTimerManager().DoReloadTimers(); } -- cgit v1.2.3