diff --git a/osu.Game/Rulesets/Scoring/ScoreProcessor.cs b/osu.Game/Rulesets/Scoring/ScoreProcessor.cs
index 9c1bc35169..eb49638d59 100644
--- a/osu.Game/Rulesets/Scoring/ScoreProcessor.cs
+++ b/osu.Game/Rulesets/Scoring/ScoreProcessor.cs
@@ -252,6 +252,12 @@ namespace osu.Game.Rulesets.Scoring
HighestCombo.Value = 0;
}
+ protected override void Dispose(bool isDisposing)
+ {
+ base.Dispose(isDisposing);
+ hitEvents.Clear();
+ }
+
///
/// Retrieve a score populated with data for the current play this processor is responsible for.
///
@@ -269,7 +275,7 @@ namespace osu.Game.Rulesets.Scoring
foreach (var result in Enum.GetValues(typeof(HitResult)).OfType().Where(r => r > HitResult.None && hitWindows.IsHitResultAllowed(r)))
score.Statistics[result] = GetStatistic(result);
- score.HitEvents = new List(hitEvents);
+ score.HitEvents = hitEvents;
}
///