From: Ilia Alshanetsky Date: Thu, 8 Mar 2012 03:31:46 +0000 (+0000) Subject: Fixed bug #60634 (Segmentation fault when trying to die() in SessionHandler::write()) X-Git-Tag: PHP-5.4.1-RC1~26^2~29 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f005f36cd6b1dfe50c1f7cb6f4169e69ba5659b8;p=php Fixed bug #60634 (Segmentation fault when trying to die() in SessionHandler::write()) --- diff --git a/NEWS b/NEWS index 50c6da3360..2d1bafc51c 100644 --- a/NEWS +++ b/NEWS @@ -52,6 +52,7 @@ PHP NEWS . Fixed bug #60811 (php-fpm compilation problem). (rasmus) - SOAP + . Fixed basic HTTP authentication for WSDL sub requests. (Dmitry) . Fixed bug #60887 (SoapClient ignores user_agent option and sends no User-Agent header). (carloschilazo at gmail dot com) @@ -61,9 +62,6 @@ PHP NEWS - PDO_Sqlite extension: . Add createCollation support. (Damien) -- SOAP: - . Fixed basic HTTP authentication for WSDL sub requests. (Dmitry) - - Reflection: . Fixed bug #60968 (Late static binding doesn't work with ReflectionMethod::invokeArgs()). (Laruence) @@ -71,6 +69,8 @@ PHP NEWS - Session: . Fixed bug #60860 (session.save_handler=user without defined function core dumps). (Felipe) + . Fixed bug #60634 (Segmentation fault when trying to die() in + SessionHandler::write()). (Ilia) - Streams: . Fixed bug #61115 (stream related segfault on fatal error in diff --git a/ext/session/session.c b/ext/session/session.c index 875ac473c0..6d5acb9d6e 100644 --- a/ext/session/session.c +++ b/ext/session/session.c @@ -1512,9 +1512,7 @@ static void php_session_flush(TSRMLS_D) /* {{{ */ { if (PS(session_status) == php_session_active) { PS(session_status) = php_session_none; - zend_try { - php_session_save_current_state(TSRMLS_C); - } zend_end_try(); + php_session_save_current_state(TSRMLS_C); } } /* }}} */ @@ -2167,7 +2165,9 @@ static PHP_RSHUTDOWN_FUNCTION(session) /* {{{ */ { int i; - php_session_flush(TSRMLS_C); + zend_try { + php_session_flush(TSRMLS_C); + } zend_end_try(); php_rshutdown_session_globals(TSRMLS_C); /* this should NOT be done in php_rshutdown_session_globals() */