The crash comes from trying to index in to an array that doesn’t exist, the second ‘instance’ of the gameplay tag container gets confused..
I have added crash logs, an example project made with 5.8 preview 1 (though this is reproduceable in 5.7) and a screenshot of the issue showing the instability/disconnect.
UECC-Windows-51AD913B4FF50604C425E3BFB55D6244_0000.zip(160 KB)
FavoriteInstanced.zip(23.1 KB)
0eMTJoytcR.png(98.1 KB)
Steps to Reproduce
- Create a USTRUCT that contains an FGameplayTagContainer
- Create an Actor with a TInstancedStruct of the newly created USTRUCT above, make that property EditAnywhere
- Add the actor to the world, locate the property, add it to your Favorites.
- Add some tags to the FGameplayTagContainer, either by the favorites or actual location of it
- note instability and/or crashing - especially when interacting with the combo box.
This is not specific to FGameplayTagContainers, it’s just a good example of the instability. float values, text fields - all out of sync and unstable.
Found this in our 5.7 project, and made a test project in 5.8 preview 1 which I have attached.
I had an install of 5.5 and didn’t have the issue there.
This is indeed a bug. It appears that two separate builders are being used for the instanced struct which overwrite the underlying node. It also looks like the method used for changing the instanced struct’s internals was changed around 5.5. I’m not sure what the correct fix may be currently, but I will talk this over with the team who owns FInstancedStruct.
-James
I will let you know what I find! I guess the workaround is to not use favorites, but not using an editor feature to make workflows easier is not something I ever like to encourage as a valid “workaround”. Since there are some issues with the underlying parts, I’m not sure if it can be in a 5.8 hotfix. It all depends on the scope of the needed fix.
-James
Thanks, James!
Please keep us posted and let me know if there’s anything I can do on my end!