浏览代码

implement ChangeEasyPassword from legacy provider

crobibero 5 年之前
父节点
当前提交
44a8ea6bee
共有 1 个文件被更改,包括 11 次插入1 次删除
  1. 11 1
      Jellyfin.Server.Implementations/Users/UserManager.cs

+ 11 - 1
Jellyfin.Server.Implementations/Users/UserManager.cs

@@ -263,7 +263,17 @@ namespace Jellyfin.Server.Implementations.Users
         /// <inheritdoc/>
         public void ChangeEasyPassword(User user, string newPassword, string? newPasswordSha1)
         {
-            user.EasyPassword = _cryptoProvider.CreatePasswordHash(newPassword).ToString();
+            if (newPassword != null)
+            {
+                newPasswordSha1 = _cryptoProvider.CreatePasswordHash(newPassword).ToString();
+            }
+
+            if (string.IsNullOrWhiteSpace(newPasswordSha1))
+            {
+                throw new ArgumentNullException(nameof(newPasswordSha1));
+            }
+
+            user.EasyPassword = newPasswordSha1;
             UpdateUser(user);
 
             OnUserPasswordChanged?.Invoke(this, new GenericEventArgs<User>(user));