Use a transaction for key binding population

This commit is contained in:
Dean Herbert
2017-10-20 16:53:51 +09:00
parent a6f48f7f9f
commit 4f392a867a

View File

@ -36,8 +36,9 @@ namespace osu.Game.Input
private void insertDefaults(IEnumerable<KeyBinding> defaults, int? rulesetId = null, int? variant = null) private void insertDefaults(IEnumerable<KeyBinding> defaults, int? rulesetId = null, int? variant = null)
{ {
var context = GetContext(); using (var context = GetContext())
using (var transaction = context.Database.BeginTransaction())
{
// compare counts in database vs defaults // compare counts in database vs defaults
foreach (var group in defaults.GroupBy(k => k.Action)) foreach (var group in defaults.GroupBy(k => k.Action))
{ {
@ -58,7 +59,8 @@ namespace osu.Game.Input
}); });
} }
context.SaveChanges(); context.SaveChanges(transaction);
}
} }
/// <summary> /// <summary>