Fix KeyBindingStore regression

This commit is contained in:
Dean Herbert 2017-10-17 17:08:01 +09:00
parent ad54ca9268
commit e02640637a
1 changed files with 1 additions and 8 deletions

View File

@ -15,16 +15,9 @@ namespace osu.Game.Input
{
public class KeyBindingStore : DatabaseBackedStore
{
/// <summary>
/// As we do a lot of lookups, let's share a context between them to hopefully improve performance.
/// </summary>
private readonly OsuDbContext queryContext;
public KeyBindingStore(Func<OsuDbContext> getContext, RulesetStore rulesets, Storage storage = null)
: base(getContext, storage)
{
queryContext = GetContext();
foreach (var info in rulesets.AvailableRulesets)
{
var ruleset = info.CreateInstance();
@ -74,7 +67,7 @@ private void insertDefaults(IEnumerable<KeyBinding> defaults, int? rulesetId = n
/// <param name="rulesetId">The ruleset's internal ID.</param>
/// <param name="variant">An optional variant.</param>
/// <returns></returns>
public IEnumerable<KeyBinding> Query(int? rulesetId = null, int? variant = null) => query(queryContext, rulesetId, variant);
public IEnumerable<KeyBinding> Query(int? rulesetId = null, int? variant = null) => query(GetContext(), rulesetId, variant);
private IEnumerable<KeyBinding> query(OsuDbContext context, int? rulesetId = null, int? variant = null) =>
context.DatabasedKeyBinding.Where(b => b.RulesetID == rulesetId && b.Variant == variant);