@@ -36,7 +36,7 @@ static inline int msgpack_convert_long_to_properties(HashTable *ht, zval *object
3636
3737 if (msgpack_convert_array (& tplval , data , dataval ) == SUCCESS ) {
3838 zend_hash_move_forward_ex (props , prop_pos );
39- zend_update_property (Z_OBJCE_P (object ), object , prop_name , prop_len , & tplval );
39+ zend_update_property (Z_OBJCE_P (object ), OBJ_FOR_PROP ( object ) , prop_name , prop_len , & tplval );
4040 return SUCCESS ;
4141 }
4242 return FAILURE ;
@@ -45,14 +45,14 @@ static inline int msgpack_convert_long_to_properties(HashTable *ht, zval *object
4545 {
4646 if (msgpack_convert_object (& tplval , data , val ) == SUCCESS ) {
4747 zend_hash_move_forward_ex (props , prop_pos );
48- zend_update_property (Z_OBJCE_P (object ), object , prop_name , prop_len , & tplval );
48+ zend_update_property (Z_OBJCE_P (object ), OBJ_FOR_PROP ( object ) , prop_name , prop_len , & tplval );
4949 return SUCCESS ;
5050 }
5151 return FAILURE ;
5252 }
5353 default :
5454 zend_hash_move_forward_ex (props , prop_pos );
55- zend_update_property (Z_OBJCE_P (object ), object , prop_name , prop_len , val );
55+ zend_update_property (Z_OBJCE_P (object ), OBJ_FOR_PROP ( object ) , prop_name , prop_len , val );
5656 return SUCCESS ;
5757 }
5858 }
@@ -89,10 +89,10 @@ static inline int msgpack_convert_string_to_properties(zval *object, zend_string
8989 prot_name = zend_mangle_property_name ("*" , 1 , ZSTR_VAL (key ), ZSTR_LEN (key ), 1 );
9090
9191 if (zend_hash_find (propers , priv_name ) != NULL ) {
92- zend_update_property_ex (ce , object , key , val );
92+ zend_update_property_ex (ce , OBJ_FOR_PROP ( object ) , key , val );
9393 return_code = SUCCESS ;
9494 } else if (zend_hash_find (propers , prot_name ) != NULL ) {
95- zend_update_property_ex (ce , object , key , val );
95+ zend_update_property_ex (ce , OBJ_FOR_PROP ( object ) , key , val );
9696 return_code = SUCCESS ;
9797 } else {
9898#if PHP_VERSION_ID < 80000
@@ -310,8 +310,9 @@ int msgpack_convert_object(zval *return_value, zval *tpl, zval *value) /* {{{ */
310310 fci .retval = & retval ;
311311 fci .param_count = 0 ;
312312 fci .params = & params ;
313+ #if PHP_VERSION_ID < 80000
313314 fci .no_separation = 1 ;
314-
315+ #endif
315316#if PHP_VERSION_ID < 70300
316317 fcc .initialized = 1 ;
317318#endif
@@ -434,10 +435,10 @@ int msgpack_convert_object(zval *return_value, zval *tpl, zval *value) /* {{{ */
434435 return FAILURE ;
435436 }
436437
437- zend_update_property_ex (ce , return_value , str_key , & nv );
438+ zend_update_property_ex (ce , OBJ_FOR_PROP ( return_value ) , str_key , & nv );
438439 zval_ptr_dtor (& nv );
439440 } else {
440- zend_update_property (ce , return_value , prop_name , prop_len , aryval );
441+ zend_update_property (ce , OBJ_FOR_PROP ( return_value ) , prop_name , prop_len , aryval );
441442 }
442443 num_key ++ ;
443444 } ZEND_HASH_FOREACH_END ();
0 commit comments