mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-02-05 04:06:08 -05:00
POSIX.1-2008 has marked gettimeofday(2) as obsolete, recommending the use of clock_gettime(2) instead. CLOCK_MONOTONIC has been used instead of CLOCK_REALTIME because it is unaffected by manual changes in the system clock. This makes it better for our purposes, namely, measuring the difference between two points in time. tv_sec has been casted to long in most places since POSIX does not define the actual type of time_t.
28 lines
582 B
C
28 lines
582 B
C
#include "misc.h"
|
|
|
|
#include <wctype.h>
|
|
|
|
bool
|
|
isword(wchar_t wc, bool spaces_only, const wchar_t *delimiters)
|
|
{
|
|
if (spaces_only)
|
|
return iswgraph(wc);
|
|
|
|
if (wcschr(delimiters, wc) != NULL)
|
|
return false;
|
|
|
|
return iswgraph(wc);
|
|
}
|
|
|
|
void
|
|
timespec_sub(const struct timespec *a, const struct timespec *b,
|
|
struct timespec *res)
|
|
{
|
|
res->tv_sec = a->tv_sec - b->tv_sec;
|
|
res->tv_nsec = a->tv_nsec - b->tv_nsec;
|
|
/* tv_nsec may be negative */
|
|
if (res->tv_nsec < 0) {
|
|
res->tv_sec--;
|
|
res->tv_nsec += 1000 * 1000 * 1000;
|
|
}
|
|
}
|