From 00b0501424fd7994decc3d05571ac7107eb62de5 Mon Sep 17 00:00:00 2001 From: Jean Guyomarc'h Date: Sat, 1 Oct 2016 17:29:24 +0200 Subject: [PATCH] tests: mimic POSIX API in clock_gettime() Let the clock_gettime() re-implementation have the same signature than its POSIX definition. --- src/tests/eina/eina_test_lock.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/tests/eina/eina_test_lock.c b/src/tests/eina/eina_test_lock.c index 4435ddf..02d5810 100644 --- a/src/tests/eina/eina_test_lock.c +++ b/src/tests/eina/eina_test_lock.c @@ -32,15 +32,24 @@ #define CLOCK_REALTIME 0 -void clock_gettime(int mode, struct timespec* ts) +int +clock_gettime(int mode, struct timespec* ts) { clock_serv_t cclock; mach_timespec_t mts; - host_get_clock_service(mach_host_self(), CALENDAR_CLOCK, &cclock); - clock_get_time(cclock, &mts); + kern_return_t err; + + err = host_get_clock_service(mach_host_self(), CALENDAR_CLOCK, &cclock); + if (EINA_UNLIKELY(err != KERN_SUCCESS)) return err; + + err = clock_get_time(cclock, &mts); mach_port_deallocate(mach_task_self(), cclock); + if (EINA_UNLIKELY(err != KERN_SUCCESS)) return err; + ts->tv_sec = mts.tv_sec; ts->tv_nsec = mts.tv_nsec; + + return 0; } #endif -- 2.7.4