laruence Sun, 16 Oct 2011 03:00:51 +0000 Revision: http://svn.php.net/viewvc?view=revision&revision=318145
Log: Fixed bug #60038 (SIGALRM cause segfault in php_error_cb) Bug: https://bugs.php.net/60038 (Assigned) SIGALRM cause segfault in php_error_cb Changed paths: U php/php-src/branches/PHP_5_4/NEWS U php/php-src/branches/PHP_5_4/main/main.c U php/php-src/trunk/main/main.c Modified: php/php-src/branches/PHP_5_4/NEWS =================================================================== --- php/php-src/branches/PHP_5_4/NEWS 2011-10-16 02:59:24 UTC (rev 318144) +++ php/php-src/branches/PHP_5_4/NEWS 2011-10-16 03:00:51 UTC (rev 318145) @@ -15,6 +15,7 @@ . Fixed bug #55622 (memory corruption in parse_ini_string). (Pierre) . Fixed bug #55825 (Missing initial value of static locals in trait methods). (Laruence) + . Fixed bug #60038 (SIGALRM cause segfault in php_error_cb). (Laruence) - Openssl - Revert r313616 (When we have a blocking SSL socket, respect the timeout Modified: php/php-src/branches/PHP_5_4/main/main.c =================================================================== --- php/php-src/branches/PHP_5_4/main/main.c 2011-10-16 02:59:24 UTC (rev 318144) +++ php/php-src/branches/PHP_5_4/main/main.c 2011-10-16 03:00:51 UTC (rev 318145) @@ -900,6 +900,9 @@ /* store the error if it has changed */ if (display) { +#ifdef ZEND_SIGNALS + HANDLE_BLOCK_INTERRUPTIONS(); +#endif if (PG(last_error_message)) { free(PG(last_error_message)); PG(last_error_message) = NULL; @@ -908,6 +911,9 @@ free(PG(last_error_file)); PG(last_error_file) = NULL; } +#ifdef ZEND_SIGNALS + HANDLE_UNBLOCK_INTERRUPTIONS(); +#endif if (!error_filename) { error_filename = "Unknown"; } Modified: php/php-src/trunk/main/main.c =================================================================== --- php/php-src/trunk/main/main.c 2011-10-16 02:59:24 UTC (rev 318144) +++ php/php-src/trunk/main/main.c 2011-10-16 03:00:51 UTC (rev 318145) @@ -900,6 +900,9 @@ /* store the error if it has changed */ if (display) { +#ifdef ZEND_SIGNALS + HANDLE_BLOCK_INTERRUPTIONS(); +#endif if (PG(last_error_message)) { free(PG(last_error_message)); PG(last_error_message) = NULL; @@ -908,6 +911,9 @@ free(PG(last_error_file)); PG(last_error_file) = NULL; } +#ifdef ZEND_SIGNALS + HANDLE_UNBLOCK_INTERRUPTIONS(); +#endif if (!error_filename) { error_filename = "Unknown"; }
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php