Description

The shadow state used to store previous values on the client side is not GC aware, so when an object gets garbage collected it's not nulled out of the shadow state.  This results in stale pointers being passed as arguments to OnReps. Workarounds typically involve manually storing a "PrevBlah" UPROPERTY pointer on your object instead.

We need to look into making the shadow state in RepLayout GC aware, and add an EngineTest to cover this case.

Another workaround could be to use TWeakObjectPtrs instead of raw pointers, but this is blocked by [Link Removed].

Steps to Reproduce

TBD

Have Comments or More Details?

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

0
Login to Vote

Backlogged
CreatedMay 20, 2021
UpdatedJul 11, 2022