@@ -2132,11 +2132,11 @@ static zend_never_inline void zend_assign_to_string_offset(zval *str, zval *dim,
21322132 }
21332133 }
21342134
2135- if (( size_t ) offset >= ZSTR_LEN (s )) {
2135+ if (ZEND_SIZE_T_LTE_ZEND_LONG ( ZSTR_LEN (s ), offset )) {
21362136 /* Extend string if needed */
2137- zend_long old_len = ZSTR_LEN (s );
2137+ size_t old_len = ZSTR_LEN (s );
21382138 ZVAL_NEW_STR (str , zend_string_extend (s , (size_t )offset + 1 , 0 ));
2139- memset (Z_STRVAL_P (str ) + old_len , ' ' , offset - old_len );
2139+ memset (Z_STRVAL_P (str ) + old_len , ' ' , ( size_t ) offset - old_len );
21402140 Z_STRVAL_P (str )[offset + 1 ] = 0 ;
21412141 } else {
21422142 zend_string_forget_hash_val (Z_STR_P (str ));
@@ -3094,7 +3094,7 @@ static zend_always_inline void zend_fetch_dimension_address_read(zval *result, z
30943094 }
30953095 out :
30963096
3097- if (UNEXPECTED (ZSTR_LEN (str ) < ((offset < 0 ) ? - (size_t )offset : ((size_t )offset + 1 )))) {
3097+ if (UNEXPECTED (ZEND_SIZE_T_LT_ZEND_ULONG ( ZSTR_LEN (str ), ((offset < 0 ) ? - (zend_ulong )offset : ((zend_ulong )offset + 1 ) )))) {
30983098 if (type != BP_VAR_IS ) {
30993099 zend_error (E_WARNING , "Uninitialized string offset " ZEND_LONG_FMT , offset );
31003100 ZVAL_EMPTY_STRING (result );
@@ -3227,7 +3227,7 @@ static zend_never_inline bool ZEND_FASTCALL zend_isset_dim_slow(zval *container,
32273227 if (UNEXPECTED (lval < 0 )) { /* Handle negative offset */
32283228 lval += (zend_long )Z_STRLEN_P (container );
32293229 }
3230- if (EXPECTED (lval >= 0 ) && ( size_t ) lval < Z_STRLEN_P (container )) {
3230+ if (EXPECTED (lval >= 0 ) && ZEND_SIZE_T_GT_ZEND_LONG ( Z_STRLEN_P (container ), lval )) {
32313231 return 1 ;
32323232 } else {
32333233 return 0 ;
@@ -3266,7 +3266,7 @@ static zend_never_inline bool ZEND_FASTCALL zend_isempty_dim_slow(zval *containe
32663266 if (UNEXPECTED (lval < 0 )) { /* Handle negative offset */
32673267 lval += (zend_long )Z_STRLEN_P (container );
32683268 }
3269- if (EXPECTED (lval >= 0 ) && ( size_t ) lval < Z_STRLEN_P (container )) {
3269+ if (EXPECTED (lval >= 0 ) && ZEND_SIZE_T_GT_ZEND_LONG ( Z_STRLEN_P (container ), lval )) {
32703270 return (Z_STRVAL_P (container )[lval ] == '0' );
32713271 } else {
32723272 return 1 ;
0 commit comments