FInterfaceProperty::SerializeItem (and ImportText) attempt to determine if the passed in object implements the interface in question. They do this by calling GetInterfaceAddress, which tries to get a pointer to the interface portion of the object itself. There are 3 cases:
The case breaking here is #3, and serialization should probably use a different function to verify that it can be properly set. This code is quite old and predates TScriptInterface, which allows safely storing objects that bp-implement a native interface
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-133116 in the post.
| 0 |
| Component | UE - Gameplay - Blueprint |
|---|---|
| Affects Versions | 4.26, 5.0 |
| Target Fix | 5.0 |
| Created | Oct 28, 2021 |
|---|---|
| Resolved | Jan 13, 2022 |
| Updated | Feb 3, 2023 |