@@ -437,7 +437,7 @@ static int ZEND_FASTCALL zend_jit_undefined_op_helper_write(HashTable *ht, uint3
437
437
438
438
static void ZEND_FASTCALL zend_jit_fetch_dim_r_helper (zend_array * ht , zval * dim , zval * result )
439
439
{
440
- zend_long hval ;
440
+ zend_ulong hval ;
441
441
zend_string * offset_key ;
442
442
zval * retval ;
443
443
@@ -478,6 +478,9 @@ static void ZEND_FASTCALL zend_jit_fetch_dim_r_helper(zend_array *ht, zval *dim,
478
478
}
479
479
480
480
str_index :
481
+ if (ZEND_HANDLE_NUMERIC (offset_key , hval )) {
482
+ goto num_index ;
483
+ }
481
484
retval = zend_hash_find (ht , offset_key );
482
485
if (retval ) {
483
486
/* support for $GLOBALS[...] */
@@ -509,7 +512,7 @@ static void ZEND_FASTCALL zend_jit_fetch_dim_r_helper(zend_array *ht, zval *dim,
509
512
510
513
static void ZEND_FASTCALL zend_jit_fetch_dim_is_helper (zend_array * ht , zval * dim , zval * result )
511
514
{
512
- zend_long hval ;
515
+ zend_ulong hval ;
513
516
zend_string * offset_key ;
514
517
zval * retval ;
515
518
@@ -550,6 +553,9 @@ static void ZEND_FASTCALL zend_jit_fetch_dim_is_helper(zend_array *ht, zval *dim
550
553
}
551
554
552
555
str_index :
556
+ if (ZEND_HANDLE_NUMERIC (offset_key , hval )) {
557
+ goto num_index ;
558
+ }
553
559
retval = zend_hash_find (ht , offset_key );
554
560
if (retval ) {
555
561
/* support for $GLOBALS[...] */
@@ -578,7 +584,7 @@ static void ZEND_FASTCALL zend_jit_fetch_dim_is_helper(zend_array *ht, zval *dim
578
584
579
585
static int ZEND_FASTCALL zend_jit_fetch_dim_isset_helper (zend_array * ht , zval * dim )
580
586
{
581
- zend_long hval ;
587
+ zend_ulong hval ;
582
588
zend_string * offset_key ;
583
589
zval * retval ;
584
590
@@ -618,6 +624,9 @@ static int ZEND_FASTCALL zend_jit_fetch_dim_isset_helper(zend_array *ht, zval *d
618
624
}
619
625
620
626
str_index :
627
+ if (ZEND_HANDLE_NUMERIC (offset_key , hval )) {
628
+ goto num_index ;
629
+ }
621
630
retval = zend_hash_find (ht , offset_key );
622
631
if (retval ) {
623
632
/* support for $GLOBALS[...] */
@@ -645,7 +654,7 @@ static int ZEND_FASTCALL zend_jit_fetch_dim_isset_helper(zend_array *ht, zval *d
645
654
646
655
static zval * ZEND_FASTCALL zend_jit_fetch_dim_rw_helper (zend_array * ht , zval * dim )
647
656
{
648
- zend_long hval ;
657
+ zend_ulong hval ;
649
658
zend_string * offset_key ;
650
659
zval * retval ;
651
660
@@ -688,6 +697,9 @@ static zval* ZEND_FASTCALL zend_jit_fetch_dim_rw_helper(zend_array *ht, zval *di
688
697
}
689
698
690
699
str_index :
700
+ if (ZEND_HANDLE_NUMERIC (offset_key , hval )) {
701
+ goto num_index ;
702
+ }
691
703
retval = zend_hash_find (ht , offset_key );
692
704
if (retval ) {
693
705
/* support for $GLOBALS[...] */
@@ -726,7 +738,7 @@ static zval* ZEND_FASTCALL zend_jit_fetch_dim_rw_helper(zend_array *ht, zval *di
726
738
727
739
static zval * ZEND_FASTCALL zend_jit_fetch_dim_w_helper (zend_array * ht , zval * dim )
728
740
{
729
- zend_long hval ;
741
+ zend_ulong hval ;
730
742
zend_string * offset_key ;
731
743
zval * retval ;
732
744
@@ -769,6 +781,9 @@ static zval* ZEND_FASTCALL zend_jit_fetch_dim_w_helper(zend_array *ht, zval *dim
769
781
}
770
782
771
783
str_index :
784
+ if (ZEND_HANDLE_NUMERIC (offset_key , hval )) {
785
+ goto num_index ;
786
+ }
772
787
retval = zend_hash_find (ht , offset_key );
773
788
if (retval ) {
774
789
/* support for $GLOBALS[...] */
0 commit comments