From: Shenghou Ma Date: Tue, 17 Dec 2013 07:43:14 +0000 (-0500) Subject: time: fix test error in Chinese edition of Windows X-Git-Tag: go1.3beta1~1212 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=98f16ad1123ffcdec1122a0f7b535b590e879423;p=gostls13.git time: fix test error in Chinese edition of Windows On the Chinese Windows XP system that I'm using, GetTimeZoneInformation returns a struct containing "中国标准时间" (China Standard Time in Chinese) in both StandardName and DaylightName (which is correct, because China does not use DST). However, in registry, under key HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\China Standard Time, the key Std and Dlt contain "中国标准时间" (China Standard Time in Chinese) and "中国夏季时间" (China Summer Time in Chinese) respectively. This means that time.toEnglishName() cannot determine the abbreviation for the local timezone (CST) and causes test failures (time.Local is empty) R=golang-dev, bradfitz CC=golang-dev https://golang.org/cl/43210043 --- diff --git a/src/pkg/time/zoneinfo_windows.go b/src/pkg/time/zoneinfo_windows.go index be4e5c13ff..7e4d146d89 100644 --- a/src/pkg/time/zoneinfo_windows.go +++ b/src/pkg/time/zoneinfo_windows.go @@ -54,7 +54,7 @@ func matchZoneKey(zones syscall.Handle, kname string, stdname, dstname string) ( if err != nil { return false, err } - if s != dstname { + if s != dstname && dstname != stdname { return false, nil } return true, nil