I noticed that some struct are not always copied in python. For example, FBox is not copied if !a_src.IsValid and !a_dst.IsValid even if Min and Max are different. Another example is FJsonObjectWrapper, if a_src.JsonString and a_dst.JsonString are empty the struct is not copied even if the JsonObject are different.

In PyConversion.cpp, NativizeProperty_Direct will not call CopyScriptStruct if Identical returns true.

In the case of FBox, if the boxes are well initialized then IsValid are true.

In the case of FJsonObjectWrapper, one way to properly do the copy is to provide a FJsonObjectWrapper::operator== with set WithIdenticalViaEquality = true.

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-191455 in the post.

Login to Vote

ComponentUE - Editor - Workflow Systems
Affects Versions5.2
CreatedJul 28, 2023
UpdatedJan 20, 2024
View Jira Issue