From df454396a4e13ce00ef52ae4c40f98be10c76d2e Mon Sep 17 00:00:00 2001 From: Cyberboss Date: Tue, 2 Oct 2018 10:21:33 -0400 Subject: [PATCH] Fixes attempting to attach an already loaded User while test merging --- .../Controllers/RepositoryController.cs | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/Tgstation.Server.Host/Controllers/RepositoryController.cs b/src/Tgstation.Server.Host/Controllers/RepositoryController.cs index e4397fb4a5..ee4e9ff7cf 100644 --- a/src/Tgstation.Server.Host/Controllers/RepositoryController.cs +++ b/src/Tgstation.Server.Host/Controllers/RepositoryController.cs @@ -644,11 +644,16 @@ namespace Tgstation.Server.Host.Controllers if (needToApplyRemainingPrs) { - var contextUser = new Models.User + //an invocation of LoadRevisionInformation could have already loaded this user + var contextUser = databaseContext.Users.Local.Where(x => x.Id == AuthenticationContext.User.Id).FirstOrDefault(); + if (contextUser == default) { - Id = AuthenticationContext.User.Id - }; - databaseContext.Users.Attach(contextUser); + contextUser = new Models.User + { + Id = AuthenticationContext.User.Id + }; + databaseContext.Users.Attach(contextUser); + } foreach (var I in model.NewTestMerges) {