diff options
Diffstat (limited to 'libglusterfs/src/common-utils.h')
-rw-r--r-- | libglusterfs/src/common-utils.h | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/libglusterfs/src/common-utils.h b/libglusterfs/src/common-utils.h index 2bad5b4736e..8b6f0f1ea73 100644 --- a/libglusterfs/src/common-utils.h +++ b/libglusterfs/src/common-utils.h @@ -695,19 +695,23 @@ typedef enum { static inline char * gf_time_fmt (char *dst, size_t sz_dst, time_t utime, unsigned int fmt) { - extern void _gf_timestuff (gf_timefmts *, const char ***, const char ***); + extern void _gf_timestuff (const char ***, const char ***); static gf_timefmts timefmt_last = (gf_timefmts) - 1; static const char **fmts; static const char **zeros; struct tm tm, *res; int localtime = 0; - if (timefmt_last == (gf_timefmts) - 1) - _gf_timestuff (&timefmt_last, &fmts, &zeros); - if (timefmt_last < fmt) fmt = gf_timefmt_default; + if (timefmt_last == ((gf_timefmts)-1)) { + _gf_timestuff (&fmts, &zeros); + timefmt_last = gf_timefmt_last; + } + if (timefmt_last <= fmt) { + fmt = gf_timefmt_default; + } localtime = gf_log_get_localtime (); res = localtime ? localtime_r (&utime, &tm) : gmtime_r (&utime, &tm); - if (utime && res != NULL) { + if (utime && (res != NULL)) { strftime (dst, sz_dst, fmts[fmt], &tm); } else { strncpy (dst, "N/A", sz_dst); |