fix wide scanf's handling of input failure on %c, and simplify %[
[musl] / src / time / gettimeofday.c
index 2b8a287..09afb70 100644 (file)
@@ -1,9 +1,13 @@
-#define SYSCALL_RETURN_ERRNO
+#include <time.h>
 #include <sys/time.h>
 #include "syscall.h"
 
 int gettimeofday(struct timeval *tv, void *tz)
 {
-       syscall2(__NR_gettimeofday, (long)tv, 0);
+       struct timespec ts;
+       if (!tv) return 0;
+       clock_gettime(CLOCK_REALTIME, &ts);
+       tv->tv_sec = ts.tv_sec;
+       tv->tv_usec = (int)ts.tv_nsec / 1000;
        return 0;
 }