From: Lucian Petrut Date: Wed, 18 Mar 2020 16:33:08 +0000 (+0000) Subject: log: fix timestamps on Windows X-Git-Tag: v16.1.0~652^2~10 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=8e10578d1cfb97265acf1065a45b01c8f565aef9;p=ceph.git log: fix timestamps on Windows timeval.tv_usec uses long, although on Windows long uses 32b, even on x64. For this reason, we'll have to avoid a direct cast from time_t, which is 64b long. Signed-off-by: Lucian Petrut --- diff --git a/src/log/LogClock.h b/src/log/LogClock.h index 6648f44f0b7..1a9bc6cba2c 100644 --- a/src/log/LogClock.h +++ b/src/log/LogClock.h @@ -134,7 +134,8 @@ inline int append_time(const log_time& t, char *out, int outlen) { bool coarse = t.time_since_epoch().count().coarse; auto tv = log_clock::to_timeval(t); std::tm bdt; - localtime_r((time_t*)&tv.tv_sec, &bdt); + time_t t_sec = tv.tv_sec; + localtime_r(&t_sec, &bdt); char tz[32] = { 0 }; strftime(tz, sizeof(tz), "%z", &bdt);