From: Marco Costalba Date: Sat, 10 Mar 2012 18:38:56 +0000 (+0100) Subject: Fix time_to_msec() precision X-Git-Url: https://git.sesse.net/?p=stockfish;a=commitdiff_plain;h=3dccdf5b835b9856bcf869fbad90ae4914a2813c Fix time_to_msec() precision Result of t.time * 1000 should be a 64 bit value, not an int. Bug reported by several users. No functional change. Signed-off-by: Marco Costalba --- diff --git a/src/types.h b/src/types.h index 25eef007..4c8c8134 100644 --- a/src/types.h +++ b/src/types.h @@ -65,13 +65,13 @@ typedef unsigned __int64 uint64_t; typedef _timeb sys_time_t; inline void system_time(sys_time_t* t) { _ftime(t); } -inline uint64_t time_to_msec(const sys_time_t& t) { return t.time * 1000 + t.millitm; } +inline uint64_t time_to_msec(const sys_time_t& t) { return t.time * 1000LL + t.millitm; } #else # include typedef timeval sys_time_t; inline void system_time(sys_time_t* t) { gettimeofday(t, NULL); } -inline uint64_t time_to_msec(const sys_time_t& t) { return t.tv_sec * 1000 + t.tv_usec / 1000; } +inline uint64_t time_to_msec(const sys_time_t& t) { return t.tv_sec * 1000LL + t.tv_usec / 1000; } #endif #if defined(_WIN64)