mirror of https://github.com/ppy/osu
Fix scores importing with deleted beatmap sets
This commit is contained in:
parent
33e39795c3
commit
dfc0928ebe
|
@ -590,7 +590,7 @@ protected virtual void PreImport(TModel model)
|
|||
/// </summary>
|
||||
/// <param name="existing">The existing model.</param>
|
||||
/// <param name="import">The newly imported model.</param>
|
||||
/// <returns>Whether the existing model should be restored and used. Returning false will delete the existing a force a re-import.</returns>
|
||||
/// <returns>Whether the existing model should be restored and used. Returning false will delete the existing and force a re-import.</returns>
|
||||
protected virtual bool CanUndelete(TModel existing, TModel import) => true;
|
||||
|
||||
private DbSet<TModel> queryModel() => ContextFactory.Get().Set<TModel>();
|
||||
|
|
|
@ -22,6 +22,6 @@ public DatabasedLegacyScoreParser(RulesetStore rulesets, BeatmapManager beatmaps
|
|||
}
|
||||
|
||||
protected override Ruleset GetRuleset(int rulesetId) => rulesets.GetRuleset(rulesetId).CreateInstance();
|
||||
protected override WorkingBeatmap GetBeatmap(string md5Hash) => beatmaps.GetWorkingBeatmap(beatmaps.QueryBeatmap(b => b.MD5Hash == md5Hash));
|
||||
protected override WorkingBeatmap GetBeatmap(string md5Hash) => beatmaps.GetWorkingBeatmap(beatmaps.QueryBeatmap(b => !b.BeatmapSet.DeletePending && b.MD5Hash == md5Hash));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -56,6 +56,8 @@ protected override ScoreInfo CreateModel(ArchiveReader archive)
|
|||
}
|
||||
}
|
||||
|
||||
protected override bool CanUndelete(ScoreInfo existing, ScoreInfo import) => false;
|
||||
|
||||
protected override IEnumerable<string> GetStableImportPaths(Storage stableStorage)
|
||||
=> stableStorage.GetFiles(ImportFromStablePath).Where(p => HandledExtensions.Any(ext => Path.GetExtension(p)?.Equals(ext, StringComparison.InvariantCultureIgnoreCase) ?? false));
|
||||
|
||||
|
|
Loading…
Reference in New Issue