From: Debian PHP Maintainers Date: Sat, 2 May 2015 08:26:56 +0000 (+0200) Subject: Use system timezone X-Git-Tag: archive/raspbian/8.2.20-3+rpi1^2~29 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=50841b5e1b7a94ad11ffed6f15efbfa823607471;p=php8.2.git Use system timezone Upstream don't want this patch. See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=730771 for a summary. This delta is recovered from previous versions of the system timezone patch in Debian, and appears to have inadvertently been dropped. Author unknown. To be used in tandem with use_embedded_timezonedb.patch and use_embedded_timezonedb_fixes.patch. Gbp-Pq: Name 0021-Use-system-timezone.patch --- diff --git a/ext/date/php_date.c b/ext/date/php_date.c index 4e1ff217..876e5b5a 100644 --- a/ext/date/php_date.c +++ b/ext/date/php_date.c @@ -549,6 +549,23 @@ static char* guess_timezone(const timelib_tzdb *tzdb) } else if (*DATEG(default_timezone)) { return DATEG(default_timezone); } + /* Try to guess timezone from system information */ + { + struct tm *ta, tmbuf; + time_t the_time; + char *tzid = NULL; + + the_time = time(NULL); + ta = php_localtime_r(&the_time, &tmbuf); + if (ta) { + tzid = timelib_timezone_id_from_abbr(ta->tm_zone, ta->tm_gmtoff, ta->tm_isdst); + } + if (! tzid) { + tzid = "UTC"; + } + + return tzid; + } /* Fallback to UTC */ return "UTC"; }