pajoye Fri, 09 Oct 2009 19:06:10 +
Revision: http://svn.php.net/viewvc?view=revisionrevision=289442
Log:
- Merge: Fixed bug #49627 (error_log to specified file does not log time
according to date.timezone)
Bug: http://bugs.php.net/49627 (Closed) error_log to specified file does not
log time according to date.timezone
Changed paths:
U php/php-src/branches/PHP_5_3_1/ext/date/php_date.c
U php/php-src/branches/PHP_5_3_1/main/main.c
U php/php-src/branches/PHP_5_3_1/main/php_globals.h
Modified: php/php-src/branches/PHP_5_3_1/ext/date/php_date.c
===
--- php/php-src/branches/PHP_5_3_1/ext/date/php_date.c 2009-10-09 18:59:14 UTC
(rev 289441)
+++ php/php-src/branches/PHP_5_3_1/ext/date/php_date.c 2009-10-09 19:06:10 UTC
(rev 289442)
@@ -849,7 +849,17 @@
return env;
}
/* Check config setting for default timezone */
- if (DATEG(default_timezone) (strlen(DATEG(default_timezone)) 0)
timelib_timezone_id_is_valid(DATEG(default_timezone), tzdb)) {
+ if (!DATEG(default_timezone)) {
+ /* Special case: ext/date wasn't initialized yet */
+ zval ztz;
+
+ if (SUCCESS ==
zend_get_configuration_directive(date.timezone, sizeof(date.timezone),
ztz)
+ Z_TYPE(ztz) == IS_STRING
+ Z_STRLEN(ztz) 0
+ timelib_timezone_id_is_valid(Z_STRVAL(ztz), tzdb)) {
+ return Z_STRVAL(ztz);
+ }
+ } else if (*DATEG(default_timezone)
timelib_timezone_id_is_valid(DATEG(default_timezone), tzdb)) {
return DATEG(default_timezone);
}
#if HAVE_TM_ZONE
Modified: php/php-src/branches/PHP_5_3_1/main/main.c
===
--- php/php-src/branches/PHP_5_3_1/main/main.c 2009-10-09 18:59:14 UTC (rev
289441)
+++ php/php-src/branches/PHP_5_3_1/main/main.c 2009-10-09 19:06:10 UTC (rev
289442)
@@ -556,11 +556,18 @@
int fd = -1;
time_t error_time;
+ if (PG(in_error_log)) {
+ /* prevent recursive invocation */
+ return;
+ }
+ PG(in_error_log) = 1;
+
/* Try to use the specified logging location. */
if (PG(error_log) != NULL) {
#ifdef HAVE_SYSLOG_H
if (!strcmp(PG(error_log), syslog)) {
php_syslog(LOG_NOTICE, %.500s, log_message);
+ PG(in_error_log) = 0;
return;
}
#endif
@@ -571,7 +578,7 @@
char *error_time_str;
time(error_time);
- error_time_str = php_format_date(d-M-Y H:i:s, 11,
error_time, php_during_module_startup() TSRMLS_CC);
+ error_time_str = php_format_date(d-M-Y H:i:s, 11,
error_time, 1 TSRMLS_CC);
len = spprintf(tmp, 0, [%s] %s%s, error_time_str,
log_message, PHP_EOL);
#ifdef PHP_WIN32
php_flock(fd, 2);
@@ -580,6 +587,7 @@
efree(tmp);
efree(error_time_str);
close(fd);
+ PG(in_error_log) = 0;
return;
}
}
@@ -589,6 +597,7 @@
if (sapi_module.log_message) {
sapi_module.log_message(log_message);
}
+ PG(in_error_log) = 0;
}
/* }}} */
@@ -1352,6 +1361,7 @@
#endif
zend_try {
+ PG(in_error_log) = 0;
PG(during_request_startup) = 1;
php_output_activate(TSRMLS_C);
Modified: php/php-src/branches/PHP_5_3_1/main/php_globals.h
===
--- php/php-src/branches/PHP_5_3_1/main/php_globals.h 2009-10-09 18:59:14 UTC
(rev 289441)
+++ php/php-src/branches/PHP_5_3_1/main/php_globals.h 2009-10-09 19:06:10 UTC
(rev 289442)
@@ -168,6 +168,8 @@
zend_bool mail_x_header;
char *mail_log;
+
+ zend_bool in_error_log;
};
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php