]> git.eshelyaron.com Git - emacs.git/commitdiff
(convert_time): Use explicit long double constants to ensure long double
authorEli Zaretskii <eliz@gnu.org>
Fri, 21 Jul 2006 17:28:23 +0000 (17:28 +0000)
committerEli Zaretskii <eliz@gnu.org>
Fri, 21 Jul 2006 17:28:23 +0000 (17:28 +0000)
arithmetics is used throughout.

src/ChangeLog
src/w32.c

index 510e1f9e49a5b976cdb5af4f5c1ee6df08dafc12..8c36f58cca2d91f1a01ad56c586370510cbee1dc 100644 (file)
@@ -1,3 +1,8 @@
+2006-07-21  Eli Zaretskii  <eliz@gnu.org>
+
+       * w32.c (convert_time): Use explicit long double constants to
+       ensure long double arithmetics is used throughout.
+
 2006-07-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 
        * alloc.c (pure_bytes_used_lisp, pure_bytes_used_non_lisp): New vars.
index d01a1022a1997577bf0b1defcb372373b2112486..c093eab599e35b583f33beef234d380db21cc34f 100644 (file)
--- a/src/w32.c
+++ b/src/w32.c
@@ -2256,16 +2256,17 @@ convert_time (FILETIME ft)
 
       SystemTimeToFileTime (&st, &utc_base_ft);
       utc_base = (long double) utc_base_ft.dwHighDateTime
-       * 4096 * 1024 * 1024 + utc_base_ft.dwLowDateTime;
+       * 4096.0L * 1024.0L * 1024.0L + utc_base_ft.dwLowDateTime;
       init = 1;
     }
 
   if (CompareFileTime (&ft, &utc_base_ft) < 0)
     return 0;
 
-  ret = (long double) ft.dwHighDateTime * 4096 * 1024 * 1024 + ft.dwLowDateTime;
+  ret = (long double) ft.dwHighDateTime
+    * 4096.0L * 1024.0L * 1024.0L + ft.dwLowDateTime;
   ret -= utc_base;
-  return (time_t) (ret * 1e-7);
+  return (time_t) (ret * 1e-7L);
 }
 
 void