diff --git a/src/Files.App/Utils/Shell/ShellFolderExtensions.cs b/src/Files.App/Utils/Shell/ShellFolderExtensions.cs index 81682aaa428d..79f8e51251f4 100644 --- a/src/Files.App/Utils/Shell/ShellFolderExtensions.cs +++ b/src/Files.App/Utils/Shell/ShellFolderExtensions.cs @@ -23,11 +23,18 @@ public static ShellLibraryItem GetShellLibraryItem(ShellLibraryEx library, strin IsPinned = library.PinnedToNavigationPane, }; - var folders = library.Folders; - if (folders.Count > 0) + try { - libraryItem.DefaultSaveFolder = SafetyExtensions.IgnoreExceptions(() => library.DefaultSaveFolder.FileSystemPath); - libraryItem.Folders = folders.Select(f => f.FileSystemPath).ToArray(); + var folders = library.Folders; + if (folders.Count > 0) + { + libraryItem.DefaultSaveFolder = SafetyExtensions.IgnoreExceptions(() => library.DefaultSaveFolder.FileSystemPath); + libraryItem.Folders = folders.Select(f => f.FileSystemPath).ToArray(); + } + } + catch (UnauthorizedAccessException ex) + { + App.Logger.LogWarning(ex, $"Access denied to library folders for {filePath}"); } return libraryItem;