]> Dogcows Code - chaz/openbox/blobdiff - otk/timer.hh
set the log domain for each plugin properly
[chaz/openbox] / otk / timer.hh
index e982d82bb4fa56c4313912eb8aa3baec8adc45c0..dc2917f17d13365db06b41fb6931de8208118721 100644 (file)
@@ -7,16 +7,7 @@
 */
 
 extern "C" {
-#ifdef    TIME_WITH_SYS_TIME
-#  include <sys/time.h>
-#  include <time.h>
-#else // !TIME_WITH_SYS_TIME
-#  ifdef    HAVE_SYS_TIME_H
-#    include <sys/time.h>
-#  else // !HAVE_SYS_TIME_H
-#    include <time.h>
-#  endif // HAVE_SYS_TIME_H
-#endif // TIME_WITH_SYS_TIME
+#include <ctime>
 }
 
 #include <queue>
@@ -39,9 +30,12 @@ private:
   struct TimerCompare {
      //! Compares two timeval structs
      inline bool operator()(const Timer *a, const Timer *b) const {
-       return timercmp(&a->_timeout, &b->_timeout, >);
+       return ((&a->_timeout)->tv_sec == (&b->_timeout)->tv_sec) ?
+         ((&a->_timeout)->tv_usec > (&b->_timeout)->tv_usec) :
+         ((&a->_timeout)->tv_sec > (&b->_timeout)->tv_sec);
      }
   };
+  friend struct TimerCompare; // give access to _timeout for shitty compilers
 
   typedef
   std::priority_queue<Timer*, std::vector<Timer*>, TimerCompare> TimerQ;
@@ -109,10 +103,10 @@ public:
   static bool nearestTimeout(struct timeval &tm);
 
   //! Initializes internal data before use
-  static void initialize(void);
+  static void initialize();
 
   //! Deletes all waiting timers
-  static void destroy(void);
+  static void destroy();
 };
 
 }
This page took 0.024751 seconds and 4 git commands to generate.