Merge branch 'master' of https://github.com/tuxbox-neutrino/gui-neutrino into ni/mp/tuxbox

Conflicts:
	src/Makefile.am
	src/driver/scanepg.cpp
	src/gui/audioplayer.cpp
	src/gui/infoviewer.cpp
	src/gui/movieplayer.cpp
	src/neutrino.cpp
	src/neutrino.h
	src/nhttpd/tuxboxapi/controlapi.cpp


Origin commit data
------------------
Commit: 265771c9a2
Author: vanhofen <vanhofen@gmx.de>
Date: 2017-11-23 (Thu, 23 Nov 2017)
This commit is contained in:
vanhofen
2017-11-23 17:31:02 +01:00
5 changed files with 32 additions and 5 deletions

View File

@@ -55,6 +55,21 @@ CComponentsTimer::~CComponentsTimer()
stopTimer();
}
int CComponentsTimer::getSleep(long miliseconds)
{
struct timespec req, rem;
if(miliseconds > 999){
req.tv_sec = (time_t)(miliseconds / 1000);
req.tv_nsec = (miliseconds - ((long)req.tv_sec * 1000)) * 1000000;
}else{
req.tv_sec = 0;
req.tv_nsec = miliseconds * 1000000;
}
return nanosleep(&req , &rem);
}
void CComponentsTimer::runSharedTimerAction()
{
//start loop
@@ -63,10 +78,18 @@ void CComponentsTimer::runSharedTimerAction()
while(tm_enable && tm_interval > 0) {
tm_mutex.lock();
OnTimer();
if (!tm_enable_nano)
if (!tm_enable_nano){
sleep(tm_interval);
else
usleep((useconds_t)tm_interval);
}else{
//behavior is different on cst hardware
long corr_factor = 1;
#if ! HAVE_COOL_HARDWARE
corr_factor = 10;
#endif
int res = getSleep(tm_interval * corr_factor);
if (res != 0)
dprintf(DEBUG_NORMAL,"\033[33m[CComponentsTimer] [%s - %d] ERROR: returns [%d] \033[0m\n", __func__, __LINE__, res);
}
tm_mutex.unlock();
}

View File

@@ -70,6 +70,9 @@ class CComponentsTimer : public sigc::trackable
OpenThreads::Mutex tm_mutex;
///slot for restart signals
sigc::slot0<bool> sl_stop_timer;
///sleep generated with nanosleep
int getSleep(long miliseconds);
public:
/**Constructor for timer class
*