Selaa lähdekoodia

use linq on file system ops when possible

Luke Pulverenti 12 vuotta sitten
vanhempi
sitoutus
30e135e576
1 muutettua tiedostoa jossa 8 lisäystä ja 2 poistoa
  1. 8 2
      MediaBrowser.Controller/IO/FileData.cs

+ 8 - 2
MediaBrowser.Controller/IO/FileData.cs

@@ -3,6 +3,7 @@ using MediaBrowser.Model.Logging;
 using System;
 using System;
 using System.Collections.Generic;
 using System.Collections.Generic;
 using System.IO;
 using System.IO;
+using System.Linq;
 
 
 namespace MediaBrowser.Controller.IO
 namespace MediaBrowser.Controller.IO
 {
 {
@@ -29,10 +30,15 @@ namespace MediaBrowser.Controller.IO
                 throw new ArgumentNullException("path");
                 throw new ArgumentNullException("path");
             }
             }
 
 
-            var dict = new Dictionary<string, FileSystemInfo>(StringComparer.OrdinalIgnoreCase);
-            
             var entries = new DirectoryInfo(path).EnumerateFileSystemInfos(searchPattern, SearchOption.TopDirectoryOnly);
             var entries = new DirectoryInfo(path).EnumerateFileSystemInfos(searchPattern, SearchOption.TopDirectoryOnly);
 
 
+            if (!resolveShortcuts && flattenFolderDepth == 0)
+            {
+                return entries.ToDictionary(i => i.FullName, StringComparer.OrdinalIgnoreCase);
+            }
+
+            var dict = new Dictionary<string, FileSystemInfo>(StringComparer.OrdinalIgnoreCase);
+
             foreach (var entry in entries)
             foreach (var entry in entries)
             {
             {
                 var isDirectory = (entry.Attributes & FileAttributes.Directory) == FileAttributes.Directory;
                 var isDirectory = (entry.Attributes & FileAttributes.Directory) == FileAttributes.Directory;