rasmus Wed, 07 Sep 2011 18:48:17 +0000 Revision: http://svn.php.net/viewvc?view=revision&revision=316382
Log: Make timeouts work again for shutdown functions. Fixes the faling lang/045 test Changed paths: U php/php-src/branches/PHP_5_4/Zend/zend_execute_API.c U php/php-src/trunk/Zend/zend_execute_API.c Modified: php/php-src/branches/PHP_5_4/Zend/zend_execute_API.c =================================================================== --- php/php-src/branches/PHP_5_4/Zend/zend_execute_API.c 2011-09-07 18:47:22 UTC (rev 316381) +++ php/php-src/branches/PHP_5_4/Zend/zend_execute_API.c 2011-09-07 18:48:17 UTC (rev 316382) @@ -1328,6 +1328,13 @@ TSRMLS_FETCH(); if (zend_on_timeout) { + /* + We got here because we got a timeout signal, so we are in a signal handler + at this point. However, we want to be able to timeout any user-supplied + shutdown functions, so pretend we are not in a signal handler while we are + calling these + */ + SIGG(running) = 0; zend_on_timeout(EG(timeout_seconds) TSRMLS_CC); } Modified: php/php-src/trunk/Zend/zend_execute_API.c =================================================================== --- php/php-src/trunk/Zend/zend_execute_API.c 2011-09-07 18:47:22 UTC (rev 316381) +++ php/php-src/trunk/Zend/zend_execute_API.c 2011-09-07 18:48:17 UTC (rev 316382) @@ -1328,6 +1328,13 @@ TSRMLS_FETCH(); if (zend_on_timeout) { + /* + We got here because we got a timeout signal, so we are in a signal handler + at this point. However, we want to be able to timeout any user-supplied + shutdown functions, so pretend we are not in a signal handler while we are + calling these + */ + SIGG(running) = 0; zend_on_timeout(EG(timeout_seconds) TSRMLS_CC); }
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php