]> granicus.if.org Git - php/commitdiff
Fixed bug #60723 (error_log error time has changed to UTC ignoring default timezo)
authorXinchen Hui <laruence@php.net>
Sun, 23 Sep 2012 14:59:31 +0000 (22:59 +0800)
committerXinchen Hui <laruence@php.net>
Mon, 24 Sep 2012 02:59:06 +0000 (10:59 +0800)
Cherry pick to 5.3

ext/standard/tests/general_functions/bug60723.phpt [new file with mode: 0644]
main/main.c

diff --git a/ext/standard/tests/general_functions/bug60723.phpt b/ext/standard/tests/general_functions/bug60723.phpt
new file mode 100644 (file)
index 0000000..cd73c8c
--- /dev/null
@@ -0,0 +1,19 @@
+--TEST--
+Bug #55371 (get_magic_quotes_gpc() and get_magic_quotes_runtime() throw deprecated warning)
+--INI--
+date.timezone=ASIA/Chongqing
+log_errors=On
+--FILE--
+<?php
+$dir = dirname(__FILE__);
+$log = $dir . "/tmp.err";
+ini_set("error_log", $log);
+echo $aa;
+error_log("dummy");
+readfile($log);
+unlink($log);
+?>
+--EXPECTF--
+Notice: Undefined variable: aa in %sbug60723.php on line %d
+[%s ASIA/Chongqing] PHP Notice:  Undefined variable: aa in %sbug60723.php on line %d
+[%s ASIA/Chongqing] dummy
index 6506e10af61be4dbbe03d44d464b3c678a27cfc8..631a6a9fea6569f3dd04e99e3bc30aab938fd212 100644 (file)
@@ -600,7 +600,15 @@ PHPAPI void php_log_err(char *log_message TSRMLS_DC)
                        char *error_time_str;
 
                        time(&error_time);
-                       error_time_str = php_format_date("d-M-Y H:i:s e", 13, error_time, 0 TSRMLS_CC);
+#ifdef ZTS
+                       if (!php_during_module_startup()) {
+                               error_time_str = php_format_date("d-M-Y H:i:s e", 13, error_time, 1 TSRMLS_CC);
+                       } else {
+                               error_time_str = php_format_date("d-M-Y H:i:s e", 13, error_time, 0 TSRMLS_CC);
+                       }
+#else
+                       error_time_str = php_format_date("d-M-Y H:i:s e", 13, error_time, 1 TSRMLS_CC);
+#endif
                        len = spprintf(&tmp, 0, "[%s] %s%s", error_time_str, log_message, PHP_EOL);
 #ifdef PHP_WIN32
                        php_flock(fd, 2);