switch GPeriodic to use monotonic time
authorRyan Lortie <desrt@desrt.ca>
Fri, 22 Oct 2010 17:13:01 +0000 (19:13 +0200)
committerRyan Lortie <desrt@desrt.ca>
Wed, 27 Oct 2010 13:22:13 +0000 (09:22 -0400)
gio/gperiodic.c

index 47ea9a8..3eb6983 100644 (file)
@@ -114,13 +114,13 @@ static guint64
 g_periodic_get_microticks (GPeriodic *periodic)
 {
   guint64 microticks;
-  GTimeVal timeval;
+  GTimeSpec timespec;
 
-  g_source_get_current_time (periodic->source, &timeval);
+  g_source_get_time (periodic->source, &timespec);
 
-  microticks = timeval.tv_sec;
+  microticks = timespec.tv_sec;
   microticks *= 1000000;
-  microticks += timeval.tv_usec;
+  microticks += timespec.tv_nsec / 1000;
   microticks *= periodic->hz;
 
   return microticks;