If config files don't exist in user specified directory copy files from default, not override user choice

This commit is contained in:
Jacek Jagosz 2021-07-25 20:39:45 +02:00
parent a07ad3e479
commit c39f2b0c1f
2 changed files with 6 additions and 6 deletions

View File

@ -574,7 +574,8 @@ int apply_flags(const char *line) {
void apply_config(std::unordered_map<std::string, std::string> &&vars) {
if(!fs::exists(stream.file_apps.c_str())) {
stream.file_apps = SUNSHINE_DEFAULT_DIR "/" APPS_JSON;
std::string sunshine_apps_default = SUNSHINE_DEFAULT_DIR "/" APPS_JSON;
fs::copy_file(sunshine_apps_default.c_str(), stream.file_apps.c_str());
}
for(auto &[name, val] : vars) {
@ -759,7 +760,8 @@ int parse(int argc, char *argv[]) {
}
if(!fs::exists(sunshine.config_file.c_str())) {
sunshine.config_file = SUNSHINE_DEFAULT_DIR "/sunshine.conf";
std::string sunshine_config_default = SUNSHINE_DEFAULT_DIR "/sunshine.conf";
fs::copy_file(sunshine_config_default.c_str(), sunshine.config_file.c_str());
}
auto vars = parse_config(read_file(sunshine.config_file.c_str()));

View File

@ -250,8 +250,7 @@ void saveApp(resp_https_t response, req_https_t request) {
fileTree.erase("apps");
fileTree.push_back(std::make_pair("apps", newApps));
}
std::string sunshine_apps_path = SUNSHINE_CONFIG_DIR "/" APPS_JSON;
pt::write_json(sunshine_apps_path, fileTree);
pt::write_json(config::stream.file_apps, fileTree);
}
catch(std::exception &e) {
BOOST_LOG(warning) << "SaveApp: "sv << e.what();
@ -361,8 +360,7 @@ void saveConfig(resp_https_t response, req_https_t request) {
configStream << kv.first << " = " << value << std::endl;
}
std::string sunshine_config_path = SUNSHINE_CONFIG_DIR "/sunshine.conf";
write_file(sunshine_config_path.c_str(), configStream.str());
write_file(config::sunshine.config_file.c_str(), configStream.str());
}
catch(std::exception &e) {
BOOST_LOG(warning) << "SaveConfig: "sv << e.what();