Settings manager fixes for directory creation

This commit is contained in:
Dan Paulat 2021-10-30 22:59:19 -05:00
parent 5214f866d4
commit 5cbe986734
2 changed files with 3 additions and 6 deletions

View file

@ -26,28 +26,25 @@ static boost::json::value ConvertSettingsToJson();
static void GenerateDefaultSettings(); static void GenerateDefaultSettings();
static bool LoadSettings(const boost::json::object& settingsJson); static bool LoadSettings(const boost::json::object& settingsJson);
bool Initialize() void Initialize()
{ {
std::string appDataPath { std::string appDataPath {
QStandardPaths::writableLocation(QStandardPaths::AppDataLocation) QStandardPaths::writableLocation(QStandardPaths::AppDataLocation)
.toStdString()}; .toStdString()};
if (!std::filesystem::is_directory(appDataPath)) if (!std::filesystem::exists(appDataPath))
{ {
if (!std::filesystem::create_directories(appDataPath)) if (!std::filesystem::create_directories(appDataPath))
{ {
BOOST_LOG_TRIVIAL(error) BOOST_LOG_TRIVIAL(error)
<< logPrefix_ << "Unable to create application data directory: \"" << logPrefix_ << "Unable to create application data directory: \""
<< appDataPath << "\""; << appDataPath << "\"";
return false;
} }
} }
std::string settingsPath {appDataPath + "/settings.json"}; std::string settingsPath {appDataPath + "/settings.json"};
ReadSettings(settingsPath); ReadSettings(settingsPath);
return true;
} }
void ReadSettings(const std::string& settingsPath) void ReadSettings(const std::string& settingsPath)

View file

@ -11,7 +11,7 @@ namespace manager
namespace SettingsManager namespace SettingsManager
{ {
bool Initialize(); void Initialize();
void ReadSettings(const std::string& settingsPath); void ReadSettings(const std::string& settingsPath);
std::shared_ptr<settings::GeneralSettings> general_settings(); std::shared_ptr<settings::GeneralSettings> general_settings();