diff options
author | Alexander Larsson <alexl@redhat.com> | 2010-09-29 13:35:18 +0200 |
---|---|---|
committer | Alexander Larsson <alexl@redhat.com> | 2010-09-29 13:35:18 +0200 |
commit | 3f3283ee17d3318fa9bfb5c9900c06dbec434568 (patch) | |
tree | fd86625c5dacbd990ef6a78281c968268c14a7b5 /client/threads.cpp | |
parent | 93dc13c91a2634c59d2ff233fa8ba79a534205b0 (diff) | |
download | spice-3f3283ee17d3318fa9bfb5c9900c06dbec434568.tar.gz spice-3f3283ee17d3318fa9bfb5c9900c06dbec434568.tar.xz spice-3f3283ee17d3318fa9bfb5c9900c06dbec434568.zip |
client: Fall back to gettimeofday if clock_gettime not found
Diffstat (limited to 'client/threads.cpp')
-rw-r--r-- | client/threads.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/client/threads.cpp b/client/threads.cpp index a9b8ea50..eb4b7a18 100644 --- a/client/threads.cpp +++ b/client/threads.cpp @@ -22,6 +22,9 @@ #ifdef WIN32 #include <sys/timeb.h> #endif +#ifdef HAVE_SYS_TIME_H +#include <sys/time.h> +#endif Thread::Thread(thread_main_t thread_main, void* opaque) { @@ -43,8 +46,13 @@ static inline void rel_time(struct timespec& time, uint64_t delta_nano) _ftime_s(&now); time.tv_sec = (long)now.time; time.tv_nsec = now.millitm * 1000 * 1000; -#else +#elif defined(HAVE_CLOCK_GETTIME) clock_gettime(CLOCK_MONOTONIC, &time); +#else + struct timeval tv; + gettimeofday(&tv,NULL); + time.tv_sec = tv.tv_sec; + time.tv_nsec = tv.tv_usec*1000; #endif delta_nano += (uint64_t)time.tv_sec * 1000 * 1000 * 1000; delta_nano += time.tv_nsec; |