aboutsummaryrefslogtreecommitdiff
path: root/Jellyfin.Server.Implementations
diff options
context:
space:
mode:
Diffstat (limited to 'Jellyfin.Server.Implementations')
-rw-r--r--Jellyfin.Server.Implementations/Item/PeopleRepository.cs13
1 files changed, 12 insertions, 1 deletions
diff --git a/Jellyfin.Server.Implementations/Item/PeopleRepository.cs b/Jellyfin.Server.Implementations/Item/PeopleRepository.cs
index 048ad0ffa8..38f699c15c 100644
--- a/Jellyfin.Server.Implementations/Item/PeopleRepository.cs
+++ b/Jellyfin.Server.Implementations/Item/PeopleRepository.cs
@@ -83,7 +83,18 @@ public class PeopleRepository(IDbContextFactory<JellyfinDbContext> dbProvider, I
});
}
- context.Peoples.AddRange(people.Select(Map));
+ foreach (var person in people.Select(Map))
+ {
+ if (context.Peoples.Any(f => f.Id == person.Id))
+ {
+ context.Peoples.Attach(person).State = EntityState.Modified;
+ }
+ else
+ {
+ context.Peoples.Add(person);
+ }
+ }
+
context.SaveChanges();
transaction.Commit();
}