diff --git a/osu.Game/Beatmaps/BeatmapManager.cs b/osu.Game/Beatmaps/BeatmapManager.cs
index 26f538f65b..5f83bbb0dd 100644
--- a/osu.Game/Beatmaps/BeatmapManager.cs
+++ b/osu.Game/Beatmaps/BeatmapManager.cs
@@ -436,20 +436,23 @@ namespace osu.Game.Beatmaps
/// The beatmap to lookup.
/// Whether to force a refetch from the database to ensure is up-to-date.
/// A instance correlating to the provided .
- public WorkingBeatmap GetWorkingBeatmap(BeatmapInfo beatmapInfo, bool refetch = false)
+ public WorkingBeatmap GetWorkingBeatmap(BeatmapInfo? beatmapInfo, bool refetch = false)
{
- // Detached sets don't come with files.
- // If we seem to be missing files, now is a good time to re-fetch.
- if (refetch || beatmapInfo.IsManaged || beatmapInfo.BeatmapSet?.Files.Count == 0)
+ if (beatmapInfo != null)
{
- workingBeatmapCache.Invalidate(beatmapInfo);
+ // Detached sets don't come with files.
+ // If we seem to be missing files, now is a good time to re-fetch.
+ if (refetch || beatmapInfo.IsManaged || beatmapInfo.BeatmapSet?.Files.Count == 0)
+ {
+ workingBeatmapCache.Invalidate(beatmapInfo);
- Guid id = beatmapInfo.ID;
- beatmapInfo = Realm.Run(r => r.Find(id)?.Detach()) ?? beatmapInfo;
+ Guid id = beatmapInfo.ID;
+ beatmapInfo = Realm.Run(r => r.Find(id)?.Detach()) ?? beatmapInfo;
+ }
+
+ Debug.Assert(beatmapInfo.IsManaged != true);
}
- Debug.Assert(beatmapInfo.IsManaged != true);
-
return workingBeatmapCache.GetWorkingBeatmap(beatmapInfo);
}