diff --git a/osu.Game/Screens/Select/Leaderboards/Leaderboard.cs b/osu.Game/Screens/Select/Leaderboards/Leaderboard.cs index 2c51429d4c..02a412685c 100644 --- a/osu.Game/Screens/Select/Leaderboards/Leaderboard.cs +++ b/osu.Game/Screens/Select/Leaderboards/Leaderboard.cs @@ -11,6 +11,7 @@ using osu.Framework.Graphics.Containers; using osu.Framework.Graphics.Primitives; using System; using osu.Framework.Allocation; +using osu.Framework.Threading; using osu.Game.Database; using osu.Game.Rulesets.Scoring; using osu.Game.Online.API; @@ -93,13 +94,18 @@ namespace osu.Game.Screens.Select.Leaderboards private BeatmapInfo beatmap; + private ScheduledDelegate pendingBeatmapSwitch; + public BeatmapInfo Beatmap { get { return beatmap; } set { beatmap = value; - Schedule(updateScores); + Scores = null; + + pendingBeatmapSwitch?.Cancel(); + pendingBeatmapSwitch = Schedule(updateScores); } }