php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Return to Bug #65463
Patch php-segv revision 2013-09-04 18:52 UTC by keyur@php.net
revision 2013-08-17 05:46 UTC by keyur@php.net

Patch php-segv for Reproducible crash Bug #65463

Patch version 2013-09-04 18:52 UTC

Return to Bug #65463 | Download this patch
This patch renders other patches obsolete

Obsolete patches:

Patch Revisions: 2013-09-04 18:52 UTC | 2013-08-17 05:46 UTC

Developer: keyur@php.net

Line 3 (now 3), was 22 lines, now 19 lines

  
      Fix order of destruction
  
  diff --git a/Zend/zend.c b/Zend/zend.c
 index fc443d9..6e8aca7 100644
 index fc443d9..972dff1 100644
  --- a/Zend/zend.c
  +++ b/Zend/zend.c
 @@ -817,7 +817,6 @@ void zend_shutdown(TSRMLS_D) /* {{{ */
         zend_shutdown_timeout_thread();
 @@ -817,6 +817,11 @@ void zend_shutdown(TSRMLS_D) /* {{{ */
  	zend_shutdown_timeout_thread();
   #endif
         zend_destroy_rsrc_list(&EG(persistent_list) TSRMLS_CC);
 -       zend_destroy_modules();
 
         zend_hash_destroy(GLOBAL_FUNCTION_TABLE);
         zend_hash_destroy(GLOBAL_CLASS_TABLE);
 @@ -825,6 +824,7 @@ void zend_shutdown(TSRMLS_D) /* {{{ */
         zend_hash_destroy(GLOBAL_AUTO_GLOBALS_TABLE);
         free(GLOBAL_AUTO_GLOBALS_TABLE);
 
 +       zend_destroy_modules();
         zend_shutdown_extensions(TSRMLS_C);
         free(zend_version_info);
  	zend_destroy_rsrc_list(&EG(persistent_list) TSRMLS_CC);
 +
 +	zend_hash_clean(GLOBAL_FUNCTION_TABLE);
 +	zend_hash_clean(GLOBAL_CLASS_TABLE);
 +	zend_hash_clean(GLOBAL_AUTO_GLOBALS_TABLE);
 +
  	zend_destroy_modules();
  
  	zend_hash_destroy(GLOBAL_FUNCTION_TABLE);
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Fri May 03 02:01:31 2024 UTC