From 99687e968e81f8f945d05b7637b3f55bd1752220 Mon Sep 17 00:00:00 2001 From: MBucari Date: Sun, 19 Mar 2023 10:19:38 -0600 Subject: [PATCH] Create books directory if not found (#542) --- Source/LibationFileManager/Configuration.cs | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/Source/LibationFileManager/Configuration.cs b/Source/LibationFileManager/Configuration.cs index 3c71abe9..b1d6c671 100644 --- a/Source/LibationFileManager/Configuration.cs +++ b/Source/LibationFileManager/Configuration.cs @@ -16,11 +16,22 @@ namespace LibationFileManager if (!Directory.Exists(Path.GetDirectoryName(settingsFile)) || !File.Exists(settingsFile)) return false; - var pDic = new PersistentDictionary(settingsFile, isReadOnly: true); + var pDic = new PersistentDictionary(settingsFile, isReadOnly: false); var booksDir = pDic.GetString(nameof(Books)); if (booksDir is null || !Directory.Exists(booksDir)) - return false; + { + booksDir = Path.Combine(Path.GetDirectoryName(settingsFile), nameof(Books)); + try + { + Directory.CreateDirectory(booksDir); + + pDic.SetString(nameof(Books), booksDir); + + return booksDir is not null && Directory.Exists(booksDir); + } + catch { return false; } + } return true; }