소스 검색

Actually fix deleting profile images (hopefully)

Patrick Barron 5 년 전
부모
커밋
103c9b7162
2개의 변경된 파일7개의 추가작업 그리고 6개의 파일을 삭제
  1. 4 0
      Jellyfin.Server.Implementations/JellyfinDb.cs
  2. 3 6
      Jellyfin.Server.Implementations/Users/UserManager.cs

+ 4 - 0
Jellyfin.Server.Implementations/JellyfinDb.cs

@@ -23,8 +23,12 @@ namespace Jellyfin.Server.Implementations
         /// </summary>
         public static string ConnectionString { get; set; } = @"Data Source=jellyfin.db";
 
+        public virtual DbSet<AccessSchedule> AccessSchedules { get; set; }
+
         public virtual DbSet<ActivityLog> ActivityLogs { get; set; }
 
+        public virtual DbSet<ImageInfo> ImageInfos { get; set; }
+
         public virtual DbSet<Permission> Permissions { get; set; }
 
         public virtual DbSet<Preference> Preferences { get; set; }

+ 3 - 6
Jellyfin.Server.Implementations/Users/UserManager.cs

@@ -670,12 +670,9 @@ namespace Jellyfin.Server.Implementations.Users
         /// <inheritdoc/>
         public void ClearProfileImage(User user)
         {
-#nullable disable
-            // TODO: Remove these when User has nullable annotations
-
-            // Can't just set the value to null, as it hasn't been loaded yet, so EF Core wouldn't see the change
-            _dbProvider.CreateContext().Entry(user).Reference(u => u.ProfileImage).CurrentValue = null;
-#nullable enable
+            var dbContext = _dbProvider.CreateContext();
+            dbContext.ImageInfos.Remove(user.ProfileImage);
+            dbContext.SaveChanges();
         }
 
         private static bool IsValidUsername(string name)