@@ -2295,7 +2295,7 @@ static zend_never_inline void ZEND_FASTCALL zend_fetch_dimension_address_UNSET(z
2295
2295
zend_fetch_dimension_address (result , container_ptr , dim , dim_type , BP_VAR_UNSET EXECUTE_DATA_CC );
2296
2296
}
2297
2297
2298
- static zend_always_inline void zend_fetch_dimension_address_read (zval * result , zval * container , zval * dim , int dim_type , int type , int support_strings , int slow EXECUTE_DATA_DC )
2298
+ static zend_always_inline void zend_fetch_dimension_address_read (zval * result , zval * container , zval * dim , int dim_type , int type , int is_list , int slow EXECUTE_DATA_DC )
2299
2299
{
2300
2300
zval * retval ;
2301
2301
@@ -2312,7 +2312,7 @@ static zend_always_inline void zend_fetch_dimension_address_read(zval *result, z
2312
2312
}
2313
2313
}
2314
2314
}
2315
- if (support_strings && EXPECTED (Z_TYPE_P (container ) == IS_STRING )) {
2315
+ if (! is_list && EXPECTED (Z_TYPE_P (container ) == IS_STRING )) {
2316
2316
zend_long offset ;
2317
2317
2318
2318
try_string_offset :
@@ -2402,30 +2402,30 @@ static zend_always_inline void zend_fetch_dimension_address_read(zval *result, z
2402
2402
static zend_never_inline void ZEND_FASTCALL zend_fetch_dimension_address_read_R (zval * container , zval * dim , int dim_type OPLINE_DC EXECUTE_DATA_DC )
2403
2403
{
2404
2404
zval * result = EX_VAR (opline -> result .var );
2405
- zend_fetch_dimension_address_read (result , container , dim , dim_type , BP_VAR_R , 1 , 0 EXECUTE_DATA_CC );
2405
+ zend_fetch_dimension_address_read (result , container , dim , dim_type , BP_VAR_R , 0 , 0 EXECUTE_DATA_CC );
2406
2406
}
2407
2407
2408
2408
static zend_never_inline void zend_fetch_dimension_address_read_R_slow (zval * container , zval * dim OPLINE_DC EXECUTE_DATA_DC )
2409
2409
{
2410
2410
zval * result = EX_VAR (opline -> result .var );
2411
- zend_fetch_dimension_address_read (result , container , dim , IS_CV , BP_VAR_R , 1 , 1 EXECUTE_DATA_CC );
2411
+ zend_fetch_dimension_address_read (result , container , dim , IS_CV , BP_VAR_R , 0 , 1 EXECUTE_DATA_CC );
2412
2412
}
2413
2413
2414
2414
static zend_never_inline void ZEND_FASTCALL zend_fetch_dimension_address_read_IS (zval * container , zval * dim , int dim_type OPLINE_DC EXECUTE_DATA_DC )
2415
2415
{
2416
2416
zval * result = EX_VAR (opline -> result .var );
2417
- zend_fetch_dimension_address_read (result , container , dim , dim_type , BP_VAR_IS , 1 , 0 EXECUTE_DATA_CC );
2417
+ zend_fetch_dimension_address_read (result , container , dim , dim_type , BP_VAR_IS , 0 , 0 EXECUTE_DATA_CC );
2418
2418
}
2419
2419
2420
2420
static zend_never_inline void ZEND_FASTCALL zend_fetch_dimension_address_LIST_r (zval * container , zval * dim , int dim_type OPLINE_DC EXECUTE_DATA_DC )
2421
2421
{
2422
2422
zval * result = EX_VAR (opline -> result .var );
2423
- zend_fetch_dimension_address_read (result , container , dim , dim_type , BP_VAR_R , 0 , 0 EXECUTE_DATA_CC );
2423
+ zend_fetch_dimension_address_read (result , container , dim , dim_type , BP_VAR_R , 1 , 0 EXECUTE_DATA_CC );
2424
2424
}
2425
2425
2426
2426
ZEND_API void zend_fetch_dimension_const (zval * result , zval * container , zval * dim , int type )
2427
2427
{
2428
- zend_fetch_dimension_address_read (result , container , dim , IS_TMP_VAR , type , 1 , 0 NO_EXECUTE_DATA_CC );
2428
+ zend_fetch_dimension_address_read (result , container , dim , IS_TMP_VAR , type , 0 , 0 NO_EXECUTE_DATA_CC );
2429
2429
}
2430
2430
2431
2431
static zend_never_inline zval * ZEND_FASTCALL zend_find_array_dim_slow (HashTable * ht , zval * offset EXECUTE_DATA_DC )
0 commit comments