From: Igor Sysoev Date: Sun, 19 Apr 2009 19:08:49 +0000 (+0000) Subject: fix Win32 ngx_gettimezone() X-Git-Tag: release-0.7.52~2 X-Git-Url: http://git.kaiwu.me/postgresql/log/contrib/postgres_fdw/postgres_fdw.c?a=commitdiff_plain;h=b533e9825295a0855d78912dae9d8f1180df0900;p=nginx.git fix Win32 ngx_gettimezone() --- diff --git a/src/os/win32/ngx_time.c b/src/os/win32/ngx_time.c index 39ce63336..798c14383 100644 --- a/src/os/win32/ngx_time.c +++ b/src/os/win32/ngx_time.c @@ -60,11 +60,23 @@ ngx_libc_gmtime(time_t s, struct tm *tm) ngx_int_t ngx_gettimezone(void) { + u_long n; TIME_ZONE_INFORMATION tz; - if (GetTimeZoneInformation(&tz) != TIME_ZONE_ID_INVALID) { + n = GetTimeZoneInformation(&tz); + + switch (n) { + + case TIME_ZONE_ID_UNKNOWN: return -tz.Bias; - } - return 0; + case TIME_ZONE_ID_STANDARD: + return -(tz.Bias + tz.StandardBias); + + case TIME_ZONE_ID_DAYLIGHT: + return -(tz.Bias + tz.DaylightBias); + + default: /* TIME_ZONE_ID_INVALID */ + return 0; + } }