aboutsummaryrefslogtreecommitdiff
path: root/src/core/ngx_times.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/ngx_times.c')
-rw-r--r--src/core/ngx_times.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/core/ngx_times.c b/src/core/ngx_times.c
index ac2a3a9db..aa461c56f 100644
--- a/src/core/ngx_times.c
+++ b/src/core/ngx_times.c
@@ -123,16 +123,21 @@ void ngx_time_update(time_t s)
ngx_cached_http_time.data = p;
-#if (HAVE_TIMEZONE)
+#if (HAVE_GETTIMEZONE)
- ngx_gmtoff = ngx_timezone();
+ ngx_gmtoff = ngx_gettimezone();
ngx_gmtime(ngx_cached_time + ngx_gmtoff * 60, &tm);
-#else
+#elif (HAVE_GMTOFF)
ngx_localtime(&tm);
ngx_gmtoff = tm.ngx_tm_gmtoff / 60;
+#else
+
+ ngx_localtime(&tm);
+ ngx_gmtoff = ngx_timezone(tm.ngx_tm_isdst);
+
#endif