From ddc1aa0b5fe931c2127e91d5a7fff6f2de6be156 Mon Sep 17 00:00:00 2001 From: Roman Stoffel Date: Thu, 23 Mar 2017 23:06:24 +0100 Subject: [PATCH] GUACAMOLE-239: When available, use CLOCK_MONOTONIC to prevent backwards running time --- src/libguac/timestamp.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/libguac/timestamp.c b/src/libguac/timestamp.c index d3b79c63..0d2dc0a8 100644 --- a/src/libguac/timestamp.c +++ b/src/libguac/timestamp.c @@ -33,9 +33,13 @@ guac_timestamp guac_timestamp_current() { struct timespec current; - /* Get current time */ + /* Get current time, monotonically increasing */ +#ifdef CLOCK_MONOTONIC + clock_gettime(CLOCK_MONOTONIC, ¤t); +#else clock_gettime(CLOCK_REALTIME, ¤t); - +#endif + /* Calculate milliseconds */ return (guac_timestamp) current.tv_sec * 1000 + current.tv_nsec / 1000000;