@@ -3612,7 +3612,7 @@ PHP_FUNCTION(array_slice)
3612
3612
}
3613
3613
if (UNEXPECTED (Z_ISREF_P (entry )) &&
3614
3614
UNEXPECTED (Z_REFCOUNT_P (entry ) == 1 )) {
3615
- ZVAL_UNREF (entry );
3615
+ entry = Z_REFVAL_P (entry );
3616
3616
}
3617
3617
Z_TRY_ADDREF_P (entry );
3618
3618
ZEND_HASH_FILL_ADD (entry );
@@ -3725,7 +3725,7 @@ PHPAPI int php_array_merge(HashTable *dest, HashTable *src) /* {{{ */
3725
3725
ZEND_HASH_FOREACH_VAL (src , src_entry ) {
3726
3726
if (UNEXPECTED (Z_ISREF_P (src_entry )) &&
3727
3727
UNEXPECTED (Z_REFCOUNT_P (src_entry ) == 1 )) {
3728
- ZVAL_UNREF (src_entry );
3728
+ src_entry = Z_REFVAL_P (src_entry );
3729
3729
}
3730
3730
Z_TRY_ADDREF_P (src_entry );
3731
3731
ZEND_HASH_FILL_ADD (src_entry );
@@ -3735,7 +3735,7 @@ PHPAPI int php_array_merge(HashTable *dest, HashTable *src) /* {{{ */
3735
3735
ZEND_HASH_FOREACH_STR_KEY_VAL (src , string_key , src_entry ) {
3736
3736
if (UNEXPECTED (Z_ISREF_P (src_entry ) &&
3737
3737
Z_REFCOUNT_P (src_entry ) == 1 )) {
3738
- ZVAL_UNREF (src_entry );
3738
+ src_entry = Z_REFVAL_P (src_entry );
3739
3739
}
3740
3740
Z_TRY_ADDREF_P (src_entry );
3741
3741
if (string_key ) {
@@ -3883,7 +3883,7 @@ static inline void php_array_merge_or_replace_wrapper(INTERNAL_FUNCTION_PARAMETE
3883
3883
ZEND_HASH_FOREACH_VAL (src , src_entry ) {
3884
3884
if (UNEXPECTED (Z_ISREF_P (src_entry ) &&
3885
3885
Z_REFCOUNT_P (src_entry ) == 1 )) {
3886
- ZVAL_UNREF (src_entry );
3886
+ src_entry = Z_REFVAL_P (src_entry );
3887
3887
}
3888
3888
Z_TRY_ADDREF_P (src_entry );
3889
3889
ZEND_HASH_FILL_ADD (src_entry );
@@ -3895,7 +3895,7 @@ static inline void php_array_merge_or_replace_wrapper(INTERNAL_FUNCTION_PARAMETE
3895
3895
ZEND_HASH_FOREACH_STR_KEY_VAL (src , string_key , src_entry ) {
3896
3896
if (UNEXPECTED (Z_ISREF_P (src_entry ) &&
3897
3897
Z_REFCOUNT_P (src_entry ) == 1 )) {
3898
- ZVAL_UNREF (src_entry );
3898
+ src_entry = Z_REFVAL_P (src_entry );
3899
3899
}
3900
3900
Z_TRY_ADDREF_P (src_entry );
3901
3901
if (EXPECTED (string_key )) {
@@ -4285,7 +4285,7 @@ PHP_FUNCTION(array_reverse)
4285
4285
ZEND_HASH_REVERSE_FOREACH_VAL (Z_ARRVAL_P (input ), entry ) {
4286
4286
if (UNEXPECTED (Z_ISREF_P (entry ) &&
4287
4287
Z_REFCOUNT_P (entry ) == 1 )) {
4288
- ZVAL_UNREF (entry );
4288
+ entry = Z_REFVAL_P (entry );
4289
4289
}
4290
4290
Z_TRY_ADDREF_P (entry );
4291
4291
ZEND_HASH_FILL_ADD (entry );
@@ -4679,7 +4679,7 @@ static void php_array_intersect_key(INTERNAL_FUNCTION_PARAMETERS, int data_compa
4679
4679
if (Z_TYPE_P (val ) == IS_UNDEF ) continue ;
4680
4680
}
4681
4681
if (Z_ISREF_P (val ) && Z_REFCOUNT_P (val ) == 1 ) {
4682
- ZVAL_UNREF (val );
4682
+ val = Z_REFVAL_P (val );
4683
4683
}
4684
4684
if (p -> key == NULL ) {
4685
4685
ok = 1 ;
@@ -5090,7 +5090,7 @@ static void php_array_diff_key(INTERNAL_FUNCTION_PARAMETERS, int data_compare_ty
5090
5090
if (Z_TYPE_P (val ) == IS_UNDEF ) continue ;
5091
5091
}
5092
5092
if (Z_ISREF_P (val ) && Z_REFCOUNT_P (val ) == 1 ) {
5093
- ZVAL_UNREF (val );
5093
+ val = Z_REFVAL_P (val );
5094
5094
}
5095
5095
if (p -> key == NULL ) {
5096
5096
ok = 1 ;
0 commit comments