A licensee has found that marking an FSoftObjectPath property as Config and Untracked causes the untracking metadata to be ignored.
This is because FSoftObjectPathThreadContext::GetSerializationOptions() ends up getting a null archive passed to it, and the Untracked metadata test is only made inside an if (Archive) block, where the property pointer gets pulled from the archive.
The Config init path goes through USoftObjectProperty::ImportText_Internal(), where the GetLinker() call is the source of the null archive pointer.
While researching this, it seemed that any softobjectptr property initialised via Config suffers from the same problem, even if the property itself is not marked Config, e.g. a UPROPERTY(Config) TArray<FSomeStruct>, where FSomeStruct contains a UPROPERTY(meta=(Untracked)) FSoftObjectPtr.
My guess is that a property pointer needs to be passed all the way down to FSoftObjectPathThreadContext::GetSerializationOptions() instead of being pulled from the archive.
n/a
I am not able to find world outliner how to enable it?
How can i modify the param name in EQS node
Undefined sysmbol: typeinfo for AActor when cross-compile linux dedicated server on windows
How does TextureRenderTarget2D get TArray<uint8> type data?
What method is used to fill polygonal regions when drawing spline mesh at run time?
When I open UE4 4.24.3 it appears that. Does anyone know how to solve?
Delay nodes occasionally don't fire the "Completed" output in a nativized build
How to achieve HLSL Multiple Render Target in Material blueprints?
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-73315 in the post.
0 |
Component | UE - Foundation - Core |
---|---|
Affects Versions | 4.21 |
Created | Apr 25, 2019 |
---|---|
Resolved | Aug 27, 2021 |
Updated | Aug 27, 2021 |