diff --git a/src/Files.App/Helpers/Layout/LayoutPreferencesManager.cs b/src/Files.App/Helpers/Layout/LayoutPreferencesManager.cs index d3e74adb7433..a3179d217929 100644 --- a/src/Files.App/Helpers/Layout/LayoutPreferencesManager.cs +++ b/src/Files.App/Helpers/Layout/LayoutPreferencesManager.cs @@ -488,6 +488,9 @@ public static void SetLayoutPreferencesForPath(string path, LayoutPreferencesIte { if (!UserSettingsService.LayoutSettingsService.SyncFolderPreferencesAcrossDirectories) { + if (!IsPathAccessible(path)) + return GetDefaultLayoutPreferences(path); + path = path.TrimPath() ?? string.Empty; return SafetyExtensions.IgnoreExceptions(() => @@ -563,6 +566,18 @@ public static void SetLayoutPreferencesForPath(string path, LayoutPreferencesIte } } + private static bool IsPathAccessible(string path) + { + try + { + return !string.IsNullOrEmpty(path) && Directory.Exists(path); + } + catch (Exception) + { + return false; + } + } + private static bool SetLayoutPreferencesToDatabase(string path, ulong? frn, LayoutPreferencesItem preferencesItem) { if (string.IsNullOrEmpty(path))