diff options
author | Dmitry Stogov <dmitry@zend.com> | 2017-11-30 01:13:39 +0300 |
---|---|---|
committer | Dmitry Stogov <dmitry@zend.com> | 2017-11-30 01:13:39 +0300 |
commit | 084c17fe0b68d391467fd48a14433443d4fcba81 (patch) | |
tree | 1f2dbd5590c331de3dcec244aa6e92cc35d55a03 /Zend/zend_API.c | |
parent | fa5c186cc00fb31c4953cb0006f9e8bc066ac77a (diff) | |
download | php-git-084c17fe0b68d391467fd48a14433443d4fcba81.tar.gz |
Use zend_string_tolower() where it's possible (to avoid reallocations).
Allow zend_string_tolower_ex() to create parsistent strings
Diffstat (limited to 'Zend/zend_API.c')
-rw-r--r-- | Zend/zend_API.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/Zend/zend_API.c b/Zend/zend_API.c index 53eca994a6..179667140b 100644 --- a/Zend/zend_API.c +++ b/Zend/zend_API.c @@ -2201,8 +2201,7 @@ ZEND_API int zend_register_functions(zend_class_entry *scope, const zend_functio return FAILURE; } } - lowercase_name = zend_string_alloc(fname_len, 1); - zend_str_tolower_copy(ZSTR_VAL(lowercase_name), ptr->fname, fname_len); + lowercase_name = zend_string_tolower_ex(internal_function->function_name, 1); lowercase_name = zend_new_interned_string(lowercase_name); reg_function = malloc(sizeof(zend_internal_function)); memcpy(reg_function, &function, sizeof(zend_internal_function)); @@ -2636,7 +2635,7 @@ ZEND_API int zend_next_free_module(void) /* {{{ */ static zend_class_entry *do_register_internal_class(zend_class_entry *orig_class_entry, uint32_t ce_flags) /* {{{ */ { zend_class_entry *class_entry = malloc(sizeof(zend_class_entry)); - zend_string *lowercase_name = zend_string_alloc(ZSTR_LEN(orig_class_entry->name), 1); + zend_string *lowercase_name; *class_entry = *orig_class_entry; class_entry->type = ZEND_INTERNAL_CLASS; @@ -2648,7 +2647,7 @@ static zend_class_entry *do_register_internal_class(zend_class_entry *orig_class zend_register_functions(class_entry, class_entry->info.internal.builtin_functions, &class_entry->function_table, MODULE_PERSISTENT); } - zend_str_tolower_copy(ZSTR_VAL(lowercase_name), ZSTR_VAL(orig_class_entry->name), ZSTR_LEN(class_entry->name)); + lowercase_name = zend_string_tolower_ex(orig_class_entry->name, 1); lowercase_name = zend_new_interned_string(lowercase_name); zend_hash_update_ptr(CG(class_table), lowercase_name, class_entry); zend_string_release(lowercase_name); |