summaryrefslogtreecommitdiff
path: root/lib/dtotimespec.c
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2018-09-10 18:42:25 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2018-09-10 18:43:46 -0700
commitb021c53fd4dc009a144db2312d195dd925f0e6fd (patch)
tree4c5a792eecbcf3adfc6fb237bee27451b3b857fe /lib/dtotimespec.c
parent8b55a44258e3a217dec66acb8398e7d00059de4b (diff)
downloadgnulib-b021c53fd4dc009a144db2312d195dd925f0e6fd.tar.gz
timespec: fix resolution confusion
In normal usage, clock resolution is given in seconds, but the code was mistakenly using inverse seconds and calling it “resolution”. Fix this, partly by renaming two identifiers. The old names will be kept for a bit, to ease transition. * lib/timespec.h (TIMESPEC_HZ, LOG10_TIMESPEC_HZ): New constants, replacing TIMESPEC_RESOLUTION and LOG10_TIMESPEC_RESOLUTION, which are now obsolescent. All uses changed.
Diffstat (limited to 'lib/dtotimespec.c')
-rw-r--r--lib/dtotimespec.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/lib/dtotimespec.c b/lib/dtotimespec.c
index 599f7427a9..dcbd28051c 100644
--- a/lib/dtotimespec.c
+++ b/lib/dtotimespec.c
@@ -32,20 +32,20 @@ dtotimespec (double sec)
if (! (TYPE_MINIMUM (time_t) < sec))
return make_timespec (TYPE_MINIMUM (time_t), 0);
else if (! (sec < 1.0 + TYPE_MAXIMUM (time_t)))
- return make_timespec (TYPE_MAXIMUM (time_t), TIMESPEC_RESOLUTION - 1);
+ return make_timespec (TYPE_MAXIMUM (time_t), TIMESPEC_HZ - 1);
else
{
time_t s = sec;
- double frac = TIMESPEC_RESOLUTION * (sec - s);
+ double frac = TIMESPEC_HZ * (sec - s);
long ns = frac;
ns += ns < frac;
- s += ns / TIMESPEC_RESOLUTION;
- ns %= TIMESPEC_RESOLUTION;
+ s += ns / TIMESPEC_HZ;
+ ns %= TIMESPEC_HZ;
if (ns < 0)
{
s--;
- ns += TIMESPEC_RESOLUTION;
+ ns += TIMESPEC_HZ;
}
return make_timespec (s, ns);