util: avoid casting to long in UTI_DoubleToTimeval()
This commit is contained in:
parent
fead915b45
commit
4bbc768652
1 changed files with 4 additions and 6 deletions
10
util.c
10
util.c
|
@ -119,13 +119,11 @@ UTI_TimevalToDouble(struct timeval *tv)
|
|||
void
|
||||
UTI_DoubleToTimeval(double a, struct timeval *b)
|
||||
{
|
||||
long int_part;
|
||||
double frac_part;
|
||||
int_part = (long)(a);
|
||||
frac_part = 1.0e6 * (a - (double)(int_part));
|
||||
frac_part = frac_part > 0 ? frac_part + 0.5 : frac_part - 0.5;
|
||||
b->tv_sec = int_part;
|
||||
b->tv_usec = (long)frac_part;
|
||||
|
||||
b->tv_sec = a;
|
||||
frac_part = 1.0e6 * (a - b->tv_sec);
|
||||
b->tv_usec = frac_part > 0 ? frac_part + 0.5 : frac_part - 0.5;
|
||||
UTI_NormaliseTimeval(b);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue