diff options
| -rw-r--r-- | NEWS | 2 | ||||
| -rw-r--r-- | Zend/zend_ini.c | 20 |
2 files changed, 13 insertions, 9 deletions
@@ -3,6 +3,8 @@ PHP NEWS ?? ??? 2020, PHP 7.4.8 - Core: + . Fixed bug #79649 (Altering disable_functions from module init corrupts + memory). (Laruence) . Fixed bug #79595 (zend_init_fpu() alters FPU precision). (cmb, Nikita) . Fixed bug #79650 (php-win.exe 100% cpu lockup). (cmb) . Fixed bug #79668 (get_defined_functions(true) may miss functions). (cmb, diff --git a/Zend/zend_ini.c b/Zend/zend_ini.c index e4b9e6bc5e..3f4c9d0930 100644 --- a/Zend/zend_ini.c +++ b/Zend/zend_ini.c @@ -341,15 +341,17 @@ ZEND_API int zend_alter_ini_entry_ex(zend_string *name, zend_string *new_value, } } - if (!EG(modified_ini_directives)) { - ALLOC_HASHTABLE(EG(modified_ini_directives)); - zend_hash_init(EG(modified_ini_directives), 8, NULL, NULL, 0); - } - if (!modified) { - ini_entry->orig_value = ini_entry->value; - ini_entry->orig_modifiable = modifiable; - ini_entry->modified = 1; - zend_hash_add_ptr(EG(modified_ini_directives), ini_entry->name, ini_entry); + if (ini_entry->modifiable != ZEND_INI_SYSTEM) { + if (!EG(modified_ini_directives)) { + ALLOC_HASHTABLE(EG(modified_ini_directives)); + zend_hash_init(EG(modified_ini_directives), 8, NULL, NULL, 0); + } + if (!modified) { + ini_entry->orig_value = ini_entry->value; + ini_entry->orig_modifiable = modifiable; + ini_entry->modified = 1; + zend_hash_add_ptr(EG(modified_ini_directives), ini_entry->name, ini_entry); + } } duplicate = zend_string_copy(new_value); |
