From d58af85ce33b4b9c8cb065b59b591580ae8abe0c Mon Sep 17 00:00:00 2001 From: Andreas Monzner Date: Wed, 16 Apr 2008 09:53:18 +0000 Subject: use clock_gettime for internal timers instead of gettimeofday .. so now our timers are independent of the normal linux clock (and change linux time without inform e2 is now really uncritical) --- lib/dvb/dvbtime.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'lib/dvb/dvbtime.cpp') diff --git a/lib/dvb/dvbtime.cpp b/lib/dvb/dvbtime.cpp index 7684bfa4..9272462a 100644 --- a/lib/dvb/dvbtime.cpp +++ b/lib/dvb/dvbtime.cpp @@ -221,14 +221,13 @@ void eDVBLocalTimeHandler::updateTime( time_t tp_time, eDVBChannel *chan, int up now.tm_sec); m_time_difference = rtc_time - linuxTime; eDebug("[eDVBLocalTimerHandler] RTC to Receiver time difference is %ld seconds", nowTime - rtc_time ); - if ( abs(m_time_difference) > 59 ) + if ( m_time_difference ) { eDebug("[eDVBLocalTimerHandler] set Linux Time to RTC Time"); timeval tnow; gettimeofday(&tnow,0); tnow.tv_sec=rtc_time; settimeofday(&tnow,0); - eMainloop::addTimeOffset(m_time_difference); m_time_difference=0; } else if ( !m_time_difference ) @@ -352,14 +351,13 @@ void eDVBLocalTimeHandler::updateTime( time_t tp_time, eDVBChannel *chan, int up else eDebug("[eDVBLocalTimerHandler] don't update RTC"); - if ( abs(m_time_difference) > 59 ) + if ( m_time_difference ) { eDebug("[eDVBLocalTimerHandler] set Linux Time"); timeval tnow; gettimeofday(&tnow,0); tnow.tv_sec=t; settimeofday(&tnow,0); - eMainloop::addTimeOffset(m_time_difference); m_time_difference=0; } -- cgit v1.2.3