1
0
mirror of https://github.com/ppy/osu.git synced 2026-05-18 02:09:52 +08:00

Only drop online set ID if beatmap IDs were stripped in online retrieval

This commit is contained in:
Dean Herbert
2020-03-30 15:07:56 +09:00
Unverified
parent 7ecce713bb
commit f71c8cb30f
+11 -3
View File
@@ -103,11 +103,19 @@ namespace osu.Game.Beatmaps
validateOnlineIds(beatmapSet);
bool hadOnlineBeatmapIDs = beatmapSet.Beatmaps.Any(b => b.OnlineBeatmapID > 0);
await updateQueue.UpdateAsync(beatmapSet, cancellationToken);
// ensure at least one beatmap was able to retrieve an online ID, else drop the set ID.
if (!beatmapSet.Beatmaps.Any(b => b.OnlineBeatmapID > 0))
beatmapSet.OnlineBeatmapSetID = null;
// ensure at least one beatmap was able to retrieve or keep an online ID, else drop the set ID.
if (hadOnlineBeatmapIDs && !beatmapSet.Beatmaps.Any(b => b.OnlineBeatmapID > 0))
{
if (beatmapSet.OnlineBeatmapSetID != null)
{
beatmapSet.OnlineBeatmapSetID = null;
LogForModel(beatmapSet, "Disassociating beatmap set ID due to loss of all beatmap IDs");
}
}
}
protected override void PreImport(BeatmapSetInfo beatmapSet)