From be18721ec44326fcfb44c2ec3c4363e48ed10a79 Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Thu, 25 Jul 2002 15:59:49 +0000 Subject: [PATCH] * times.cc (to_time_t): Always round time_t down to nearest second. --- winsup/cygwin/ChangeLog | 4 ++++ winsup/cygwin/times.cc | 4 ---- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 9b8d20ff0..e45e93d7d 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,7 @@ +2002-07-24 David MacMahon + + * times.cc (to_time_t): Always round time_t down to nearest second. + 2002-07-25 Egor Duda * Makefile.in: Check if API version is updated when exports are diff --git a/winsup/cygwin/times.cc b/winsup/cygwin/times.cc index 7a9a3eb33..a7dec6a9b 100644 --- a/winsup/cygwin/times.cc +++ b/winsup/cygwin/times.cc @@ -212,7 +212,6 @@ to_time_t (FILETIME *ptr) stuffed into two long words. A time_t is the number of seconds since jan 1 1970. */ - long rem; long long x = ((long long) ptr->dwHighDateTime << 32) + ((unsigned)ptr->dwLowDateTime); /* pass "no time" as epoch */ @@ -220,10 +219,7 @@ to_time_t (FILETIME *ptr) return 0; x -= FACTOR; /* number of 100ns between 1601 and 1970 */ - rem = x % ((long long)NSPERSEC); - rem += (NSPERSEC / 2); x /= (long long) NSPERSEC; /* number of 100ns in a second */ - x += (long long) (rem / NSPERSEC); return x; }