From 52b76562054dd4f031861ff14cbf8d641c93e5b2 Mon Sep 17 00:00:00 2001 From: Xiang Xiao Date: Tue, 22 Jun 2021 00:07:52 +0800 Subject: [PATCH] libc/time: Initialize tm_zone field correctly Signed-off-by: Xiang Xiao Change-Id: Ief32aedc72ec062d428f8538a25ddfe4f81d7e29 --- libs/libc/time/lib_localtime.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libs/libc/time/lib_localtime.c b/libs/libc/time/lib_localtime.c index 76f4fc8b86d..e2374c84ec4 100644 --- a/libs/libc/time/lib_localtime.c +++ b/libs/libc/time/lib_localtime.c @@ -1806,6 +1806,7 @@ static FAR struct tm *localsub(FAR const time_t *timep, result = timesub(&t, ttisp->tt_gmtoff, sp, tmp); tmp->tm_isdst = ttisp->tt_isdst; tzname[tmp->tm_isdst] = &sp->chars[ttisp->tt_abbrind]; + tmp->tm_zone = tzname[tmp->tm_isdst]; return result; } @@ -1829,6 +1830,7 @@ static FAR struct tm *gmtsub(FAR const time_t *timep, tz_semgive(&g_gmt_sem); + tmp->tm_zone = GMT; return timesub(timep, offset, g_gmt_ptr, tmp); } @@ -2003,7 +2005,6 @@ static FAR struct tm *timesub(FAR const time_t *timep, tmp->tm_mday = (int)(idays + 1); tmp->tm_isdst = 0; tmp->tm_gmtoff = offset; - tmp->tm_zone = tzname[0]; return tmp; }