com php-src: Delete immutable arrays copied into SHM (related to bug #67725): ext/opcache/ZendAccelerator.c

From: Date: Mon, 04 Aug 2014 16:20:12 +0000
Subject: com php-src: Delete immutable arrays copied into SHM (related to bug #67725): ext/opcache/ZendAccelerator.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-79727@lists.php.net to get a copy of this message
Commit: 415482ac0abfbad8fa1416b2048a91d2e0ff2d4a Author: Dmitry Stogov <dmitry@zend.com> Mon, 4 Aug 2014 20:20:12 +0400 Parents: 7301994c28d548c5a4eda6a3a4ae0fab6af04636 Branches: phpng Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=415482ac0abfbad8fa1416b2048a91d2e0ff2d4a Log: Delete immutable arrays copied into SHM (related to bug #67725) Bugs: https://bugs.php.net/67725 Changed paths: M ext/opcache/ZendAccelerator.c Diff: diff --git a/ext/opcache/ZendAccelerator.c b/ext/opcache/ZendAccelerator.c index df36b55..4053b72 100644 --- a/ext/opcache/ZendAccelerator.c +++ b/ext/opcache/ZendAccelerator.c @@ -1650,6 +1650,7 @@ zend_op_array *persistent_compile_file(zend_file_handle *file_handle, int type T /* If script was not found or invalidated by validate_timestamps */ if (!persistent_script) { + zend_uint old_const_num = zend_hash_next_free_element(EG(zend_constants)); zend_op_array *op_array; /* Cache miss.. */ @@ -1674,6 +1675,14 @@ zend_op_array *persistent_compile_file(zend_file_handle *file_handle, int type T SHM_PROTECT(); return op_array; } + if (from_shared_memory) { + /* Delete immutable arrays moved into SHM */ + zend_uint new_const_num = zend_hash_next_free_element(EG(zend_constants)); + while (new_const_num > old_const_num) { + new_const_num--; + zend_hash_index_del(EG(zend_constants), new_const_num); + } + } } else { #if !ZEND_WIN32

« previous php.cvs (#79727) next »