]> granicus.if.org Git - php/commitdiff
Fixed bug #75742 (potential memleak in internal classes's static members)
authorXinchen Hui <laruence@gmail.com>
Thu, 28 Dec 2017 08:31:09 +0000 (16:31 +0800)
committerXinchen Hui <laruence@gmail.com>
Thu, 28 Dec 2017 08:31:09 +0000 (16:31 +0800)
NEWS
Zend/zend_execute_API.c

diff --git a/NEWS b/NEWS
index 9237ffdbe2f9521ec7ea5ca3f945d52b84e1d2dc..a330bbaf82a491fed1972611bfeffcf505df6bcb 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -3,6 +3,8 @@ PHP                                                                        NEWS
 ?? ??? ????, PHP 7.2.2
 
 - Core:
+  . Fixed bug #75742 (potential memleak in internal classes's static members).
+    (Laruence)
   . Fixed bug #75679 (Path 260 character problem). (Anatol)
   . Fixed bug #75614 (Some non-portable == in shell scripts). (jdolecek)
 
index a619b3ccf32bec87a2b4993fd0b3785bfc49489d..adf5f96c711340d3bc65b35816904a6f3af15189 100644 (file)
@@ -296,6 +296,8 @@ void shutdown_executor(void) /* {{{ */
                                break;
                        }
                } ZEND_HASH_FOREACH_END_DEL();
+
+               zend_cleanup_internal_classes();
        } else {
                zend_hash_graceful_reverse_destroy(&EG(symbol_table));
 
@@ -358,6 +360,8 @@ void shutdown_executor(void) /* {{{ */
                        } ZEND_HASH_FOREACH_END_DEL();
                }
 
+               zend_cleanup_internal_classes();
+
                while (EG(symtable_cache_ptr)>=EG(symtable_cache)) {
                        zend_hash_destroy(*EG(symtable_cache_ptr));
                        FREE_HASHTABLE(*EG(symtable_cache_ptr));
@@ -388,8 +392,6 @@ void shutdown_executor(void) /* {{{ */
 
        EG(ht_iterators_used) = 0;
 
-       zend_cleanup_internal_classes();
-
        zend_shutdown_fpu();
 }
 /* }}} */