tmore time zone fixes - plan9port - [fork] Plan 9 from user space (HTM) git clone git://src.adamsgaard.dk/plan9port (DIR) Log (DIR) Files (DIR) Refs (DIR) README (DIR) LICENSE --- (DIR) commit 7f420fb3731a6adc56ab96a934c1f77ffee48e86 (DIR) parent 6452f95be69efb9ce54158b3ddb9c7c3797e652f (HTM) Author: rsc <devnull@localhost> Date: Sat, 20 May 2006 04:24:24 +0000 more time zone fixes Diffstat: M src/lib9/date.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) --- (DIR) diff --git a/src/lib9/date.c b/src/lib9/date.c t@@ -12,12 +12,23 @@ static void dotz(void) { time_t t; + struct tm *gtm; + struct tm tm; if(didtz) return; t = time(0); - tzdelta = t - mktime(gmtime(&t)); strftime(tzone, sizeof tzone, "%Z", localtime(&t)); + tm = *localtime(&t); /* set local time zone field */ + gtm = gmtime(&t); + tm.tm_sec = gtm->tm_sec; + tm.tm_min = gtm->tm_min; + tm.tm_hour = gtm->tm_hour; + tm.tm_mday = gtm->tm_mday; + tm.tm_mon = gtm->tm_mon; + tm.tm_year = gtm->tm_year; + tm.tm_wday = gtm->tm_wday; + tzdelta = t - mktime(&tm); } static void