소스 검색

Fix gitignore-style not working properly on windows. (#15487)

Huo Jiacheng 1 개월 전
부모
커밋
435bb14bb2
1개의 변경된 파일8개의 추가작업 그리고 0개의 파일을 삭제
  1. 8 0
      Emby.Server.Implementations/Library/DotIgnoreIgnoreRule.cs

+ 8 - 0
Emby.Server.Implementations/Library/DotIgnoreIgnoreRule.cs

@@ -1,5 +1,6 @@
 using System;
 using System.IO;
+using System.Runtime.InteropServices;
 using MediaBrowser.Controller.Entities;
 using MediaBrowser.Controller.IO;
 using MediaBrowser.Controller.Resolvers;
@@ -88,6 +89,13 @@ public class DotIgnoreIgnoreRule : IResolverIgnoreRule
         var ignore = new Ignore.Ignore();
         ignore.Add(ignoreRules);
 
+        if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
+        {
+            // Mitigate the problem of the Ignore library not handling Windows paths correctly.
+            // See https://github.com/jellyfin/jellyfin/issues/15484
+            return ignore.IsIgnored(fileInfo.FullName.NormalizePath('/'));
+        }
+
         return ignore.IsIgnored(fileInfo.FullName);
     }