diff --git a/Explorer/Assets/DCL/Character/CharacterMotion/Systems/GliderPropControllerSystem.cs b/Explorer/Assets/DCL/Character/CharacterMotion/Systems/GliderPropControllerSystem.cs index cf1128f96b2..490eef8afa1 100644 --- a/Explorer/Assets/DCL/Character/CharacterMotion/Systems/GliderPropControllerSystem.cs +++ b/Explorer/Assets/DCL/Character/CharacterMotion/Systems/GliderPropControllerSystem.cs @@ -169,6 +169,14 @@ private void UpdatePropVisibility(in Entity entity, in GliderProp gliderProp, in [All(typeof(DeleteEntityIntention))] private void CleanUpDestroyedAvatarsProp(ref GliderProp gliderProp) { + // The prop View is parented to the avatar transform; if the avatar GameObject was + // destroyed by Unity directly, the child View is already destroyed (== null via Unity's + // overload) while the ECS component still references it. Guard before touching members, + // otherwise the throw escapes Update as EcsSystemException [GliderPropControllerSystem] + // (UNITY-EXPLORER-NT8). + if (gliderProp.View == null) + return; + if (glidingSettings.EnablePropPooling) { gliderProp.View.PrepareForNextActivation();