From ae3683ce11153126ae0d03e89dccef96e21ccdf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=BD=D0=B0=D0=B1?= Date: Mon, 4 Apr 2022 13:59:48 +0200 Subject: [PATCH] libspl: print_timestamp: use localtime_r() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reviewed-by: Brian Behlendorf Signed-off-by: Ahelenia ZiemiaƄska Closes #13284 --- lib/libspl/timestamp.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/libspl/timestamp.c b/lib/libspl/timestamp.c index 22ecb39407..8d14ae6457 100644 --- a/lib/libspl/timestamp.c +++ b/lib/libspl/timestamp.c @@ -44,7 +44,7 @@ void print_timestamp(uint_t timestamp_fmt) { time_t t = time(NULL); - static char *fmt = NULL; + static const char *fmt = NULL; /* We only need to retrieve this once per invocation */ if (fmt == NULL) @@ -54,9 +54,10 @@ print_timestamp(uint_t timestamp_fmt) (void) printf("%lld\n", (longlong_t)t); } else if (timestamp_fmt == DDATE) { char dstr[64]; + struct tm tm; int len; - len = strftime(dstr, sizeof (dstr), fmt, localtime(&t)); + len = strftime(dstr, sizeof (dstr), fmt, localtime_r(&t, &tm)); if (len > 0) (void) printf("%s\n", dstr); }