|
|
@ -36,7 +36,7 @@ difftimespec(struct timespec *res, struct timespec *a, struct timespec *b) |
|
|
{ |
|
|
{ |
|
|
res->tv_sec = a->tv_sec - b->tv_sec - (a->tv_nsec < b->tv_nsec); |
|
|
res->tv_sec = a->tv_sec - b->tv_sec - (a->tv_nsec < b->tv_nsec); |
|
|
res->tv_nsec = a->tv_nsec - b->tv_nsec + |
|
|
res->tv_nsec = a->tv_nsec - b->tv_nsec + |
|
|
(a->tv_nsec < b->tv_nsec) * 1000000000; |
|
|
(a->tv_nsec < b->tv_nsec) * 1E9; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
static void |
|
|
static void |
|
|
@ -116,7 +116,7 @@ main(int argc, char *argv[]) |
|
|
difftimespec(&diff, ¤t, &start); |
|
|
difftimespec(&diff, ¤t, &start); |
|
|
|
|
|
|
|
|
intspec.tv_sec = interval / 1000; |
|
|
intspec.tv_sec = interval / 1000; |
|
|
intspec.tv_nsec = (interval % 1000) * 1000000; |
|
|
intspec.tv_nsec = (interval % 1000) * 1E6; |
|
|
difftimespec(&wait, &intspec, &diff); |
|
|
difftimespec(&wait, &intspec, &diff); |
|
|
|
|
|
|
|
|
if (wait.tv_sec >= 0) { |
|
|
if (wait.tv_sec >= 0) { |
|
|
|