Re: cvs: php-src /ext/date php_date.c /ext/date/lib .cvsignore fallbackmap.h parse_date.c timelib.h timelib_structs.h timezonemap.h
/ext/date/lib/resource parse_date.re /ext/date/tests date_default_timezone_get-1.phpt date_default_timezone_set

From: Date: Sun, 02 Oct 2005 15:22:43 +0000
Subject: Re: cvs: php-src /ext/date php_date.c /ext/date/lib .cvsignore fallbackmap.h parse_date.c timelib.h timelib_structs.h timezonemap.h
/ext/date/lib/resource parse_date.re /ext/date/tests date_default_timezone_get-1.phpt date_default_timezone_set
References: 1  Groups: php.internals 
Request: Send a blank email to internals+get-19330@lists.php.net to get a copy of this message
derick Sat Oct 1 11:07:21 2005 EDT Modified files: /php-src/ext/date php_date.c /php-src/ext/date/lib fallbackmap.h timezonemap.h .cvsignore
                        parse_date.c timelib.h timelib_structs.h
/php-src/ext/date/lib/resource parse_date.re /php-src/ext/date/tests date_default_timezone_get-1.phpt
                          date_default_timezone_set-1.phpt
Log: - MF51: Implemented better timezone guessing algorithm.
With this new code, I've implemented the "magic" timezone guessing for windows. The tzname doesn't become correct, because the windows' tz names aren't in the php db, but at least the offset/dst settings become correct. Patch: http://mega.ist.utl.pt/~ncpl/php_date_windows.txt BTW, why is this change needed? : +/* $Id: php_date.c,v 1.43.2.6 2005/10/01 15:04:02 derick Exp $ */ #include "php.h" #include "php_streams.h" @@ -265,7 +265,7 @@ } /* Check environment variable */ env = getenv("TZ"); - if (env && *env) { + if (env && *env && strlen(env)) { return env; } '*env 'and 'strlen(env)' do the same here, and *env is much more efficient (and gcc is very lazy when working without the -Ox flags..). Also, the zone_search() function could use a special binary search to detect the first occurence of the specified tz, instead of walking through the whole array (do you want a patch for that?). Nuno

« previous php.internals (#19330) next »