summaryrefslogtreecommitdiff
path: root/Zend/zend_API.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2019-04-17 19:32:46 +0300
committerDmitry Stogov <dmitry@zend.com>2019-04-17 19:32:46 +0300
commit2de2cb2a87275da72654299723ee1fd3f8e2a149 (patch)
treee7777a8c9a519d6987174a8beb127ca2e4c5b148 /Zend/zend_API.c
parent034babbcc193a06c8a8b843ebe96792d6f5e41dc (diff)
parent93c6a32b7c88f7a6e02ce9ccf2b4f3469d250dbf (diff)
downloadphp-git-2de2cb2a87275da72654299723ee1fd3f8e2a149.tar.gz
Merge branch 'PHP-7.4'
* PHP-7.4: Fixed dl() function. It failed in DEBUG build without opcache because of assert during string interning.
Diffstat (limited to 'Zend/zend_API.c')
-rw-r--r--Zend/zend_API.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/Zend/zend_API.c b/Zend/zend_API.c
index b3a617ee62..f5baf66b6d 100644
--- a/Zend/zend_API.c
+++ b/Zend/zend_API.c
@@ -1880,13 +1880,13 @@ ZEND_API zend_module_entry* zend_register_module_ex(zend_module_entry *module) /
}
name_len = strlen(module->name);
- lcname = zend_string_alloc(name_len, 1);
+ lcname = zend_string_alloc(name_len, module->type == MODULE_PERSISTENT);
zend_str_tolower_copy(ZSTR_VAL(lcname), module->name, name_len);
lcname = zend_new_interned_string(lcname);
if ((module_ptr = zend_hash_add_mem(&module_registry, lcname, module, sizeof(zend_module_entry))) == NULL) {
zend_error(E_CORE_WARNING, "Module '%s' already loaded", module->name);
- zend_string_release_ex(lcname, 1);
+ zend_string_release(lcname);
return NULL;
}
module = module_ptr;
@@ -1894,14 +1894,14 @@ ZEND_API zend_module_entry* zend_register_module_ex(zend_module_entry *module) /
if (module->functions && zend_register_functions(NULL, module->functions, NULL, module->type)==FAILURE) {
zend_hash_del(&module_registry, lcname);
- zend_string_release_ex(lcname, 1);
+ zend_string_release(lcname);
EG(current_module) = NULL;
zend_error(E_CORE_WARNING,"%s: Unable to register functions, unable to load", module->name);
return NULL;
}
EG(current_module) = NULL;
- zend_string_release_ex(lcname, 1);
+ zend_string_release(lcname);
return module;
}
/* }}} */