mirror of
https://gitlab.com/chrony/chrony.git
synced 2025-12-04 06:45:07 -05:00
util: avoid casting to long in UTI_DoubleToTimeval()
This commit is contained in:
10
util.c
10
util.c
@@ -119,13 +119,11 @@ UTI_TimevalToDouble(struct timeval *tv)
|
|||||||
void
|
void
|
||||||
UTI_DoubleToTimeval(double a, struct timeval *b)
|
UTI_DoubleToTimeval(double a, struct timeval *b)
|
||||||
{
|
{
|
||||||
long int_part;
|
|
||||||
double frac_part;
|
double frac_part;
|
||||||
int_part = (long)(a);
|
|
||||||
frac_part = 1.0e6 * (a - (double)(int_part));
|
b->tv_sec = a;
|
||||||
frac_part = frac_part > 0 ? frac_part + 0.5 : frac_part - 0.5;
|
frac_part = 1.0e6 * (a - b->tv_sec);
|
||||||
b->tv_sec = int_part;
|
b->tv_usec = frac_part > 0 ? frac_part + 0.5 : frac_part - 0.5;
|
||||||
b->tv_usec = (long)frac_part;
|
|
||||||
UTI_NormaliseTimeval(b);
|
UTI_NormaliseTimeval(b);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user