diff --git a/OpenRA.Game/Traits/Player/FrozenActorLayer.cs b/OpenRA.Game/Traits/Player/FrozenActorLayer.cs index 45c1a90fa9..5190746cba 100644 --- a/OpenRA.Game/Traits/Player/FrozenActorLayer.cs +++ b/OpenRA.Game/Traits/Player/FrozenActorLayer.cs @@ -101,7 +101,10 @@ namespace OpenRA.Traits public void RefreshState() { Owner = actor.Owner; - TargetTypes = actor.GetEnabledTargetTypes().ToHashSet(); + + // PERF: Reuse collection to avoid allocations. + TargetTypes.Clear(); + TargetTypes.UnionWith(actor.GetEnabledTargetTypes()); if (health != null) {