Bugfix
Detail
#28952
Attribute with replacement value is incorrectly adopted by TL script function Copy
When copying objects with the TL script function 'copy', all attributes that are not 'derived' are copied. An attribute with a replacement value only has an indirect value. A storage attribute and a fallback attribute are configured. The fallback attribute is usually calculated. The attribute with a replacement value itself is not considered derived and is therefore a candidate to be copied.
Assume you have a specialized object with 3 double attributes:
- A (memory attribute)
- B (fallback attribute, calculated, always returns 5)
- C (attribute with replacement value, A as memory attribute, B as fallback attribute)
A specialist object is created for which no value is written to the memory attribute -> A = zero, B = 5, C = 5. This object is copied. Depending on the processing sequence in which the attribute values are copied, it is possible that the value for A = 5 in the copy.