Lines Matching refs:old_object
185 …API void ZEND_FASTCALL zend_objects_clone_members(zend_object *new_object, zend_object *old_object) in zend_objects_clone_members() argument
187 if (old_object->ce->default_properties_count) { in zend_objects_clone_members()
188 zval *src = old_object->properties_table; in zend_objects_clone_members()
190 zval *end = src + old_object->ce->default_properties_count; in zend_objects_clone_members()
206 } else if (old_object->properties && !old_object->ce->clone) { in zend_objects_clone_members()
208 if (EXPECTED(old_object->handlers == &std_object_handlers)) { in zend_objects_clone_members()
209 if (EXPECTED(!(GC_FLAGS(old_object->properties) & IS_ARRAY_IMMUTABLE))) { in zend_objects_clone_members()
210 GC_ADDREF(old_object->properties); in zend_objects_clone_members()
212 new_object->properties = old_object->properties; in zend_objects_clone_members()
217 if (old_object->properties && in zend_objects_clone_members()
218 EXPECTED(zend_hash_num_elements(old_object->properties))) { in zend_objects_clone_members()
224 new_object->properties = zend_new_array(zend_hash_num_elements(old_object->properties)); in zend_objects_clone_members()
227 …>properties, new_object->properties->nNumUsed + zend_hash_num_elements(old_object->properties), 0); in zend_objects_clone_members()
231 HT_FLAGS(old_object->properties) & HASH_FLAG_HAS_EMPTY_IND; in zend_objects_clone_members()
233 ZEND_HASH_FOREACH_KEY_VAL(old_object->properties, num_key, key, prop) { in zend_objects_clone_members()
235 …ZVAL_INDIRECT(&new_prop, new_object->properties_table + (Z_INDIRECT_P(prop) - old_object->properti… in zend_objects_clone_members()
248 if (old_object->ce->clone) { in zend_objects_clone_members()
255 ZEND_API zend_object *zend_objects_clone_obj(zend_object *old_object) in zend_objects_clone_obj() argument
261 new_object = zend_objects_new(old_object->ce); in zend_objects_clone_obj()
273 zend_objects_clone_members(new_object, old_object); in zend_objects_clone_obj()