>It occurs to me that with a check this thorough, we might be >able to finesse the problem on Windows with the system >returning very nonstandard timezone abbreviations. That is, >we might simply "#ifndef WIN32" the matching of zone names in >try_timezone(). However I do not know whether this would yield >reasonable results for all the zones supported by Windows. >Does anyone want to try it?
I tried this, basically changing to: #ifndef WIN32 if (strcmp(TZABBREV(cbuf), pgtm->tm_zone) != 0) { elog(DEBUG4, "Reject TZ \"%s\": at %ld \"%s\" versus \"%s\"", tzname, (long) pgtt, pgtm->tm_zone, cbuf); return false; } #endif This is what you meant, rihgt? It does *not* pick up my timezone. The following possibilities are rejected per: DEBUG: Reject TZ "Europe/Stockholm": at 16844400 1970-07-15 00:00:00 std versus 1970-07-15 01:00:00 dst DEBUG: Reject TZ "CET": at 16844400 1970-07-15 00:00:00 std versus 1970-07-15 01:00:00 dst DEBUG: Reject TZ "MET": at 16844400 1970-07-15 00:00:00 std versus 1970-07-15 01:00:00 dst DEBUG: Reject TZ "Etc/GMT-1": at 16844400 1970-07-15 00:00:00 std versus 1970-07-15 01:00:00 dst It didn't pick it up before either, but it didn't get better. Would probably be good if someone where it actally picks up the correct timezone could test this as well. Or if someone knows a TZ that matches and I can change my syste mtemporarily. Just don't want to have to test through each and every timezone.. //Magnus ---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend