diff --git a/Zend/zend.c b/Zend/zend.c index 7e173cd2b98..f30495f4502 100644 --- a/Zend/zend.c +++ b/Zend/zend.c @@ -827,6 +827,8 @@ void zend_deactivate(TSRMLS_D) shutdown_compiler(TSRMLS_C); } zend_end_try(); + zend_destroy_rsrc_list(&EG(regular_list) TSRMLS_CC); + zend_try { zend_ini_deactivate(TSRMLS_C); } zend_end_try(); diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c index b26767615a4..bf6d718f18f 100644 --- a/Zend/zend_execute_API.c +++ b/Zend/zend_execute_API.c @@ -285,11 +285,6 @@ void shutdown_executor(TSRMLS_D) clean_non_persistent_constants(TSRMLS_C); } zend_end_try(); - /* The regular list must be destroyed after the main symbol table, - * op arrays, and constants are destroyed. - */ - zend_destroy_rsrc_list(&EG(regular_list) TSRMLS_CC); - zend_try { #if ZEND_DEBUG signal(SIGSEGV, original_sigsegv_handler);