nginx-0.0.7-2004-06-17-21:18:53 import
diff --git a/src/core/ngx_times.c b/src/core/ngx_times.c
index ac2a3a9..aa461c5 100644
--- a/src/core/ngx_times.c
+++ b/src/core/ngx_times.c
@@ -123,15 +123,20 @@
     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);
 
+#elif (HAVE_GMTOFF)
+
+    ngx_localtime(&tm);
+    ngx_gmtoff = tm.ngx_tm_gmtoff / 60;
+
 #else
 
     ngx_localtime(&tm);
-    ngx_gmtoff = tm.ngx_tm_gmtoff / 60;
+    ngx_gmtoff = ngx_timezone(tm.ngx_tm_isdst);
 
 #endif