From: Dmitry Stogov Date: Thu, 10 Apr 2014 22:22:00 +0000 (+0400) Subject: Close all files and resources before before destroying object storage, because resour... X-Git-Tag: POST_PHPNG_MERGE~412^2~128^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=91ed685e26e0f2e6501ac3c7b49199080bfc47f0;p=php Close all files and resources before before destroying object storage, because resources may point to objects. (THIS CHANGE MAY BE DANGEROUS) --- diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index 50aff60f1a..fa50a731c4 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -251,7 +251,6 @@ void shutdown_compiler(TSRMLS_D) /* {{{ */ zend_stack_destroy(&CG(declare_stack)); zend_stack_destroy(&CG(list_stack)); zend_hash_destroy(&CG(filenames_table)); - zend_llist_destroy(&CG(open_files)); zend_hash_destroy(&CG(const_filenames)); zend_stack_destroy(&CG(context_stack)); } diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c index cf321398f8..2ae2bff70e 100644 --- a/Zend/zend_execute_API.c +++ b/Zend/zend_execute_API.c @@ -312,6 +312,14 @@ void shutdown_executor(TSRMLS_D) /* {{{ */ } } zend_end_try(); + zend_try { + zend_llist_destroy(&CG(open_files)); + } zend_end_try(); + + zend_try { + zend_close_rsrc_list(&EG(regular_list) TSRMLS_CC); + } zend_end_try(); + zend_try { zend_objects_store_free_object_storage(&EG(objects_store) TSRMLS_CC);