diff options
| author | Sascha Volkenandt <sascha (at) akv-soft (dot) de> | 2007-01-13 18:37:21 +0000 |
|---|---|---|
| committer | Sascha Volkenandt <sascha (at) akv-soft (dot) de> | 2007-01-13 18:37:21 +0000 |
| commit | 2072c668df9ad48586fd2750713da0be742dda6d (patch) | |
| tree | b6a8af74320fe0b4af845fdc7ec0fca40d88f02d /timers.cpp | |
| parent | 872af377d5d207b0292c4deb3ebdff09c116ea3d (diff) | |
| download | vdr-plugin-live-2072c668df9ad48586fd2750713da0be742dda6d.tar.gz vdr-plugin-live-2072c668df9ad48586fd2750713da0be742dda6d.tar.bz2 | |
- added service to switch channels by channel-id
Diffstat (limited to 'timers.cpp')
| -rw-r--r-- | timers.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
@@ -63,9 +63,6 @@ cTimer* SortedTimers::GetByTimerId( string const& timerid ) void SortedTimers::ReloadTimers( bool initial ) { - if ( !Timers.Modified( m_state ) && !initial ) - return; - dsyslog("live reloading timers"); clear(); @@ -103,9 +100,15 @@ void TimerManager::UpdateTimer( cTimer* timer, int flags, tChannelID& channel, s void TimerManager::DoPendingWork() { + if ( m_updateTimers.size() == 0 && !m_timers.Modified() ) + return; + cMutexLock lock( this ); - if ( m_updateTimers.size() > 0 ) + if ( m_updateTimers.size() > 0 ) { DoUpdateTimers(); + dsyslog("SV: signalling waiters"); + m_updateWait.Broadcast(); + } m_timers.ReloadTimers(); } @@ -121,8 +124,6 @@ void TimerManager::DoUpdateTimers() DoUpdateTimer( *timer ); } m_updateTimers.clear(); - dsyslog("SV: signalling waiters"); - m_updateWait.Broadcast(); } void TimerManager::DoInsertTimer( TimerPair& timerData ) |
