@@ -272,23 +272,9 @@ static zend_always_inline zend_bool zend_is_confusable_type(const zend_string *n
272
272
}
273
273
/* }}} */
274
274
275
- static void * zend_hash_find_ptr_lc (HashTable * ht , const char * str , size_t len ) {
276
- void * result ;
277
- zend_string * lcname ;
278
- ALLOCA_FLAG (use_heap );
279
-
280
- ZSTR_ALLOCA_ALLOC (lcname , len , use_heap );
281
- zend_str_tolower_copy (ZSTR_VAL (lcname ), str , len );
282
- result = zend_hash_find_ptr (ht , lcname );
283
- ZSTR_ALLOCA_FREE (lcname , use_heap );
284
-
285
- return result ;
286
- }
287
-
288
275
static zend_bool zend_is_not_imported (zend_string * name ) {
289
276
/* Assuming "name" is unqualified here. */
290
- return !FC (imports )
291
- || zend_hash_find_ptr_lc (FC (imports ), ZSTR_VAL (name ), ZSTR_LEN (name )) == NULL ;
277
+ return !FC (imports ) || zend_hash_find_ptr_lc (FC (imports ), name ) == NULL ;
292
278
}
293
279
294
280
void zend_oparray_context_begin (zend_oparray_context * prev_context ) /* {{{ */
@@ -901,7 +887,7 @@ zend_string *zend_resolve_non_class_name(
901
887
if (case_sensitive ) {
902
888
import_name = zend_hash_find_ptr (current_import_sub , name );
903
889
} else {
904
- import_name = zend_hash_find_ptr_lc (current_import_sub , ZSTR_VAL ( name ), ZSTR_LEN ( name ) );
890
+ import_name = zend_hash_find_ptr_lc (current_import_sub , name );
905
891
}
906
892
907
893
if (import_name ) {
@@ -918,7 +904,7 @@ zend_string *zend_resolve_non_class_name(
918
904
if (compound && FC (imports )) {
919
905
/* If the first part of a qualified name is an alias, substitute it. */
920
906
size_t len = compound - ZSTR_VAL (name );
921
- zend_string * import_name = zend_hash_find_ptr_lc (FC (imports ), ZSTR_VAL (name ), len );
907
+ zend_string * import_name = zend_hash_str_find_ptr_lc (FC (imports ), ZSTR_VAL (name ), len );
922
908
923
909
if (import_name ) {
924
910
return zend_concat_names (
@@ -971,7 +957,7 @@ zend_string *zend_resolve_class_name(zend_string *name, uint32_t type) /* {{{ */
971
957
/* If the first part of a qualified name is an alias, substitute it. */
972
958
size_t len = compound - ZSTR_VAL (name );
973
959
zend_string * import_name =
974
- zend_hash_find_ptr_lc (FC (imports ), ZSTR_VAL (name ), len );
960
+ zend_hash_str_find_ptr_lc (FC (imports ), ZSTR_VAL (name ), len );
975
961
976
962
if (import_name ) {
977
963
return zend_concat_names (
@@ -980,7 +966,7 @@ zend_string *zend_resolve_class_name(zend_string *name, uint32_t type) /* {{{ */
980
966
} else {
981
967
/* If an unqualified name is an alias, replace it. */
982
968
zend_string * import_name
983
- = zend_hash_find_ptr_lc (FC (imports ), ZSTR_VAL ( name ), ZSTR_LEN ( name ) );
969
+ = zend_hash_find_ptr_lc (FC (imports ), name );
984
970
985
971
if (import_name ) {
986
972
return zend_string_copy (import_name );
@@ -1613,7 +1599,7 @@ static zend_bool zend_verify_ct_const_access(zend_class_constant *c, zend_class_
1613
1599
if (ce -> ce_flags & ZEND_ACC_RESOLVED_PARENT ) {
1614
1600
ce = ce -> parent ;
1615
1601
} else {
1616
- ce = zend_hash_find_ptr_lc (CG (class_table ), ZSTR_VAL ( ce -> parent_name ), ZSTR_LEN ( ce -> parent_name ) );
1602
+ ce = zend_hash_find_ptr_lc (CG (class_table ), ce -> parent_name );
1617
1603
if (!ce ) {
1618
1604
break ;
1619
1605
}
@@ -1633,7 +1619,7 @@ static zend_bool zend_try_ct_eval_class_const(zval *zv, zend_string *class_name,
1633
1619
if (class_name_refers_to_active_ce (class_name , fetch_type )) {
1634
1620
cc = zend_hash_find_ptr (& CG (active_class_entry )-> constants_table , name );
1635
1621
} else if (fetch_type == ZEND_FETCH_CLASS_DEFAULT && !(CG (compiler_options ) & ZEND_COMPILE_NO_CONSTANT_SUBSTITUTION )) {
1636
- zend_class_entry * ce = zend_hash_find_ptr_lc (CG (class_table ), ZSTR_VAL ( class_name ), ZSTR_LEN ( class_name ) );
1622
+ zend_class_entry * ce = zend_hash_find_ptr_lc (CG (class_table ), class_name );
1637
1623
if (ce ) {
1638
1624
cc = zend_hash_find_ptr (& ce -> constants_table , name );
1639
1625
} else {
@@ -6191,8 +6177,8 @@ static void zend_begin_func_decl(znode *result, zend_op_array *op_array, zend_as
6191
6177
lcname = zend_string_tolower (name );
6192
6178
6193
6179
if (FC (imports_function )) {
6194
- zend_string * import_name = zend_hash_find_ptr_lc (
6195
- FC (imports_function ), ZSTR_VAL ( unqualified_name ), ZSTR_LEN ( unqualified_name ) );
6180
+ zend_string * import_name =
6181
+ zend_hash_find_ptr_lc ( FC (imports_function ), unqualified_name );
6196
6182
if (import_name && !zend_string_equals_ci (lcname , import_name )) {
6197
6183
zend_error_noreturn (E_COMPILE_ERROR , "Cannot declare function %s "
6198
6184
"because the name is already in use" , ZSTR_VAL (name ));
@@ -6657,8 +6643,8 @@ void zend_compile_class_decl(znode *result, zend_ast *ast, zend_bool toplevel) /
6657
6643
lcname = zend_string_tolower (name );
6658
6644
6659
6645
if (FC (imports )) {
6660
- zend_string * import_name = zend_hash_find_ptr_lc (
6661
- FC (imports ), ZSTR_VAL ( unqualified_name ), ZSTR_LEN ( unqualified_name ) );
6646
+ zend_string * import_name =
6647
+ zend_hash_find_ptr_lc ( FC (imports ), unqualified_name );
6662
6648
if (import_name && !zend_string_equals_ci (lcname , import_name )) {
6663
6649
zend_error_noreturn (E_COMPILE_ERROR , "Cannot declare class %s "
6664
6650
"because the name is already in use" , ZSTR_VAL (name ));
0 commit comments