Quellcode durchsuchen

evtimer_gettime was broken on MacOs.

master
Richard Nyberg vor 15 Jahren
Ursprung
Commit
9f4d2b0662
1 geänderte Dateien mit 7 neuen und 4 gelöschten Zeilen
  1. +7
    -4
      evloop/timer.c

+ 7
- 4
evloop/timer.c Datei anzeigen

@@ -25,12 +25,15 @@ int
evtimer_gettime(struct timespec *ts)
{
uint64_t nsecs;
static double nsmul;
static mach_timebase_info_data_t nsratio = { 0, 0 };
if (nsratio.denom == 0)
if (nsratio.denom == 0) {
mach_timebase_info(&nsratio);
nsecs = mach_absolute_time() * nsratio.numer / nsratio.denom;
ts->tv_sec = nsecs / 1000000000;
ts->tv_nsec = nsecs - ts->tv_sec * 1000000000;
nsmul = (double)nsratio.numer / nsratio.denom;
}
nsecs = mach_absolute_time() * nsmul;
ts->tv_sec = nsecs / 1000000000ULL;
ts->tv_nsec = nsecs - ts->tv_sec * 1000000000ULL;
return 0;
}



Laden…
Abbrechen
Speichern