X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/9f34bd86d0dc2c2ea51fe9aa54533aa68cfadc64..eb47577c32b49a28eb7986b0fd86ed0d76207150:/lib/base/ebase.h diff --git a/lib/base/ebase.h b/lib/base/ebase.h index 54b4063b..d4709418 100644 --- a/lib/base/ebase.h +++ b/lib/base/ebase.h @@ -22,6 +22,11 @@ static inline bool operator<( const timeval &t1, const timeval &t2 ) return t1.tv_sec < t2.tv_sec || (t1.tv_sec == t2.tv_sec && t1.tv_usec < t2.tv_usec); } +static inline bool operator<=( const timeval &t1, const timeval &t2 ) +{ + return t1.tv_sec < t2.tv_sec || (t1.tv_sec == t2.tv_sec && t1.tv_usec <= t2.tv_usec); +} + static inline timeval &operator+=( timeval &t1, const timeval &t2 ) { t1.tv_sec += t2.tv_sec; @@ -176,6 +181,8 @@ class eMainloop void processOneEvent(); int retval; pthread_mutex_t recalcLock; + + int m_now_is_invalid; public: static void addTimeOffset(int offset); void addSocketNotifier(eSocketNotifier *sn); @@ -187,6 +194,7 @@ public: eMainloop() :app_quit_now(0),loop_level(0),retval(0) { + m_now_is_invalid = 0; existing_loops.push_back(this); pthread_mutex_init(&recalcLock, 0); }